在Mac OS X v10.6 (Snow Leopard)上,启动MySQL会出现以下错误:

服务器退出,没有更新PID文件

文件my.cnf

[mysqld]
port            = 3306

socket          = /tmp/mysql.sock

skip-external-locking

key_buffer_size = 16K

pid-file=/var/run/mysqld/mysqld.pid

[mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

当前回答

检查一下你的硬盘是否还有剩余空间。当我的硬盘没有剩余空间时,我就遇到了这个问题。

其他回答

如果您正在运行MySQL Galera集群,例如Percona XtraDB集群,请检查wsrep_recovery。*数据目录下的文件(例如:/var/lib/mysql)。

当我试图启动一个已经被主机的OOM杀手杀死的节点时,我从systemctl得到了相同的消息,但在任何正常日志中都没有任何迹象表明为什么启动失败。wsprep恢复文件有答案,在我的情况下,我需要用以下标志启动MySQL:

mysqld --tc-heuristic-recover=ROLLBACK

如果你的系统有多个版本的MySQL,那么你很可能会遇到这个PID错误:

我们可以从杀死所有MySQL进程开始:

sudo killall mysqld

转到/usr/local,选择你想要的MySQL版本,然后为它提供MySQL权限。在我的情况下,我需要版本8。

sudo chown -R mysql mysql-8.0.21-macos10.15-x86_64

打开/usr/local/mysql-8.0.21-macos10.15-x86_64文件夹,启动SQL server:

sudo。/ mysql。服务器启动(输入您的笔记本电脑密码)

如果它给出下面的输出…PID问题解决了

sudo ./mysql.server start

Starting MySQL
.. SUCCESS!

删除pid文件,然后再次启动mysqld。

在/etc/ SELinux /config:

SELINUX=禁用并重新启动服务器。

错误日志说了什么?我得到了这个错误,它最终是my.cnf文件中的一个旧的无效设置,这是MySQL错误日志指示的。如果不是错误的配置设置,错误日志至少应该为您指明正确的方向。