在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所抱怨的文件,并重新启动MySQL。

其他回答

我使用

全新的MacBook Pro,搭载OS X v10.7.3操作系统。x(狮子) 通过OS X GCC安装程序

我使用Homebrew ('brew install MySQL ')安装MySQL。它安装了几个依赖项,然后安装了MySQL。

当我试着启动它时,

mysql.server start

Starting MySQL
.. ERROR! The server quit without updating PID file (/usr/local/var/mysql/west.local.pid).

我执行这个命令,

/usr/local/Cellar/mysql/5.5.25/scripts/mysql_install_db

和MySQL工作。

请注意,您需要从MySQL目录的顶层运行mysql_install_db(例如,usr/local/Cellar/ MySQL /5.5.25)。直接在/scripts目录中运行它并不能为它提供足够的上下文来运行它。

重新启动后,我遇到了同样的问题。以下是我的解决方法:

sudo chown -R _mysql /usr/local/var/mysql

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

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

mysqld --tc-heuristic-recover=ROLLBACK

对我来说,我必须重新安装MySQL:

brew reinstall mysql

然后按下面的命令启动MySQL,在登录时重新启动:

brew services start mysql

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