centos MySQL服务器未启动,服务器端SQL语句错误?表损坏?Cpanel自动更新?

wvt8vs2t  于 2022-11-29  发布在  Mysql
关注(0)|答案(2)|浏览(174)

昨天,我的专用服务器上的mysql服务停止工作,导致几个网页和其他应用程序瘫痪。也许cpanel的自动更新没有正确完成,但我只收到了以下错误的警告邮件:

(XID ######) The “mysql” service is down.

第一个说:

The subprocess “/usr/local/cpanel/scripts/restartsrv_mysql” reported error number 2 when it ended.

系统与服务器信息:

  • 操作系统:Linux 8.3
  • Apache版本:2.4.46
  • MySQL版本:适用于x86_64上Linux的8.0.25版(MySQL社区服务器- GPL)
  • PHP版本:7.4.18
  • 面板版本94.0.8

我将列出我尝试过的一些命令及其输出:

# systemctl start mysqld
Job for mysqld.service failed because the control process exited with error code.
See "systemctl status mysqld.service" and "journalctl -xe" for details.

然后道:
第一个
这个文件不存在,但在/tmp/mysql.sock中有一个。后来,我更改了.cnf中的一些行,但得到了同样的错误
一个
如前所述,我将客户端和mysqld的socket=/var/lib/mysql/mysql.sock更改为socket=/tmp/mysql.sock。不再进行更改。

# mysqld -u root
2021-05-11T17:11:04.993623Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.25) starting as process 25020
2021-05-11T17:11:04.997863Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2021-05-11T17:11:05.146263Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2021-05-11T17:11:05.432633Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Socket: /var/run/mysqld/mysqlx.sock
2021-05-11T17:11:05.447752Z 4 [System] [MY-013381] [Server] Server upgrade from '80024' to '80025' started.
2021-05-11T17:11:10.666062Z 4 [ERROR] [MY-013178] [Server] Execution of server-side SQL statement 'ALTER TABLE user   MODIFY max_updates int unsigned DEFAULT 0 NOT NULL,   MODIFY max_connections int unsigned DEFAULT 0 NOT NULL,   MODIFY max_user_connections int unsigned DEFAULT 0  NOT NULL,   MODIFY ssl_cipher BLOB NOT NULL,   MODIFY x509_issuer BLOB NOT NULL,   MODIFY x509_subject BLOB NOT NULL; ' failed with error code = 1138, error message = 'Invalid use of NULL value'.
2021-05-11T17:11:10.666934Z 0 [ERROR] [MY-013380] [Server] Failed to upgrade server.
2021-05-11T17:11:10.667061Z 0 [ERROR] [MY-010119] [Server] Aborting
2021-05-11T17:11:12.059278Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.25)  MySQL Community Server - GPL.

在这里我发现有趣的'ALTER TABLE user MODIFY...它看起来像有一个额外的空间(对不起,如果这是不重要的,我不是一个Maven在这件事上).

# ls -la /var/lib |grep mysql
drwxr-x--x  10 mysql          mysql          4096 May 12 00:24 mysql
drwxr-x---   2 mysql          mysql             6 Apr 23 16:18 mysql-files
drwxr-x---   2 mysql          mysql             6 Apr 23 16:18 mysql-keyring

最后,在检测到事件后,服务器有一个小时左右没有回应ping,需要拔掉插头重新启动。现在我可以通过ssh访问服务器,但mysql仍然不能工作。

vpfxa7rd

vpfxa7rd1#

如果打开了"常规日志",请将其关闭。
我在修改日志中没有发现任何明显的东西:https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-25.html
Consider filing a bug at bugs.mysql.com
mysql目录中有哪些"常规 *"文件?可以只删除这些文件。

    • 更多**

失败,错误代码= 13,错误消息

perror 13
OS error code  13:  Permission denied

谁在写?谁在运行mysqld?等等。
MySQL应由root安装,mysqld应由系统进程运行,而不是由用户进程运行。

wgx48brx

wgx48brx2#

以防万一这对任何人都有帮助,我只是在权限没有问题的时候遇到了同样的错误信息。
解决方案是SELinux阻止重命名日志文件。如果这是您的问题,您将能够在/var/log/audit/audit.log中看到类似以下的内容:

avc:  denied  { rename } for  pid=2889079 comm="boot" name="general_log.CSV"

相关问题