在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

当前回答

我在重新启动并删除所有*err文件后遇到了这个问题。

我发现/usr/local/etc文件夹中my.cnf.d目录不见了

它创造了它:

mkdir /usr/local/etc/my.cnf.d

我只是复制粘贴了位于/usr/local/etc中的my。cnf。default文件到这个目录。

然后MySQL可以重新启动:

cd /usr/local/var/mysql
mysql.server start

MySQL可以工作。

其他回答

我的错误文件还告诉我,端口可能正在被另一个进程使用,但只是运行sudo mysql。服务器启动修复了我的问题。

在我的Homebrew MySQL安装中,我只需要将位于/usr/local/var/mysql/中的ib_logfile0和ib_logfile1移动到另一个目录。

然后我就用mysql了。服务器启动,一切正常。

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

我在Mac OS X v10.7.5 (Lion)上尝试升级时遇到了这个问题。

不幸的是,MySQL也从5.5.14升级到5.6.10。我尝试了新版本,但它不起作用。

我决定回到我以前的设置,做了一个

brew switch mysql 5.5.14

这并没有解决问题。我在其他地方阅读并这样做了,瞧!一切都回来了:)

cd /usr/local/var/mysql
mv ib_logfile0 ib_logfile0.bak
mv ib_logfile1 ib_logfile1.bak

以安全模式启动MySQL:

/usr/local/mysql/bin/mysqld_safe start

或者在Mac上,结束Activity Monitor应用程序中的任何mysql或mysqld任务(或其他)。

或者检查你的错误

tail -f /usr/local/mysql/data/XXXXX-XXXXX-Pro.local.err