我对mysql不能被更新有问题。最后,我不得不卸载它,这卸载了许多其他文件,不幸的是,我自动删除了。无论如何,我确实保存了被自动删除的内容的副本,并备份了我的数据库。
我清除了mysql-服务器、mysql-客户端和mysql-公共。我重新安装了mysql-服务器,现在它是最新的版本,但我没有做的是备份用户,因为没有提到这一点,它完全忘记了我的想法。我希望我所做的备份保留了它们,但没有。所以我花了一段时间,但我找到了我大部分数据库所使用的密码,重新安装了被自动删除的内容,大多数事情都恢复了正常,但我确实遇到了一个问题.
让我说一下,我也运行了rsync,基本上是尝试将我的系统恢复到本月初,然后尝试对mysql做任何事情,但是我仍然存在这个问题,所以mysql没有完全恢复到这个月初的状态(我想我需要有人使用rsync来告诉我如何使它完全恢复到您的系统,并完全恢复系统的运行方式)。
我这么说是因为我确实对一个网站(涉及mysql)做了一些修改,做了一个python脚本(这个脚本与这个问题没有任何关系),当然还运行了系统更新(但是它不应该影响nextcloud对opcache/memcache的访问),因为rsync备份可能已经更新了。我相信nextcloud是在那个时期更新的,因为我必须再次更新NC,才能使nextcloud的其他部分充分发挥作用。出于某种原因,文件结构没有显示在桌面网页上,而是显示在我的手机上,但是将它更新到25.02解决了这个问题,但是对nextcloud的更新并没有导致这个问题,因为当我更新到25.02时(在rsync之前),它确实工作了,mysql仍然告诉我有一个更新,但是它是因为apt的冲突(因此不允许我更新)而保持的。
nextcloud的conf文件中的任何内容都没有改变,该文件一直在工作:
'memcache.distributed' => '\\OC\\Memcache\\Redis',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'memcache.local' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => 'localhost',
'port' => 6379,
), 我查看了php信息,一切似乎都启用了,而且工作.
Zend OPcache
Opcode Caching Up and Running
redis
Redis Support enabled
Redis Version 5.3.7
raphf
Resource and persistent handle factory support enabled
Extension version 2.0.1
memcached
memcached support enabled
Version 3.2.0
http
HTTP Support enabled
Extension Version 4.2.3然而,如果我试图运行sudo -u www-data php -f /web/nextcloud/cron.php,就会得到:
PHP Warning: Cannot load module "http" because required module "raphf" is not loaded in Unknown on line 0
OCP\HintException: [0]: Memcache \OC\Memcache\Redis not available for local cache
(Is the matching PHP module installed and enabled?)Cron Daemon每5分钟发送一次电子邮件。除此之外,上面的错误似乎没有其他错误被记录下来,从而为解决这个问题指明了方向。redis服务器日志看起来一切正常。
1840:M 25 Dec 2022 06:02:50.051 * 10 changes in 300 seconds. Saving...
1840:M 25 Dec 2022 06:02:50.055 * Background saving started by pid 137575
137575:C 25 Dec 2022 06:02:50.510 * DB saved on disk
137575:C 25 Dec 2022 06:02:50.511 * RDB: 0 MB of memory used by copy-on-write
1840:M 25 Dec 2022 06:02:50.557 * Background saving terminated with success我很困惑,甚至不知道从哪里开始:(我试着把所有相关信息都包括进去,但如果需要包括其他信息,请告诉我。)
发布于 2022-12-27 11:57:10
我不知道我是怎么修好的。我所做的就是运行一个脚本,将php版本更改为7.4。我试着运行sudo -u www-data php -f /web/nextcloud/cron.php,它成功了,然后我再次运行脚本,更改为8.1,然后再次运行cron命令,它成功了,没有http/raphf错误。切换到PHP7.4,然后回到8.1,以某种方式解决了这些问题。
:( lol我讨厌修复东西,但不知道什么改变了,因为没有文件更改,它们已经在我的系统上了。)当cron命令在PHP7.4中运行时,它运行了很长时间(因为自从我更新mysql以来就出现了错误)。我看到mysql和php非常活跃的cpu。
我假设mysql中用于nextcloud的东西可能很奇怪,因为必须还原它。由于某种原因,它对cron起了作用,也许它更新了nextcloud db,并修复了nextcloud db中设置的任何错误。但这只是猜测..。并不能解释为什么它在7.4中起作用。当数据库被备份时,它位于一个正在工作的数据库上,我运行的是PHP8.1
https://askubuntu.com/questions/1447216
复制相似问题