在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

当前回答

在我的情况下,我得到了这个问题在一个VPS和cPanel。

我试了之前的大部分答案,但都没有成功。

check where your error log is. It would be mentioned at the end of the error line. ERROR! The server quit without updating PID file (/var/lib/mysql/111318.vps-11.com.pid). Open that file (/var/lib/mysql/111318.vps-11.com.err) and check the bottom for the latest lines. In my case, there is [ERROR] Fatal error: Can't open and lock privilege tables: Table './mysql/db' is marked as crashed and should be repaired How solve this: Recovering and fixing the table indexes by command: [~]# myisamchk -r /var/lib/mysql/mysql/db.MYI MySQL is not running (Re)Start your MySQL server

其他回答

在/etc/ SELinux /config:

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

在这里发布的一些答案的帮助下,我找到了这个问题

我先跑

sudo -我

所以我有根权限。

然后我删除了xxxx。犯错文件:

Rm -rf /usr/local/mysql/data/xxxx.err

当我在SafeMode中创建MySQL后,

/usr/local/mysql/bin/mysqld_safe开始

它将尝试启动并因为错误而退出…一个新的xxx。Err文件将被创建,你需要读取它来查看错误的原因:

Tail -f /usr/local/mysql/data/mysqld.local.err

在我的情况下,由于某种原因,它在/var/log/文件夹中缺少一些文件夹和文件…所以我创建了两个:

cd /var/log

mkdir mysql

触摸mysql-bin.index

创建新文件后,您需要更改权限:

chown -R _mysql /var/log/mysql

当所有这些步骤都采取后,我的数据库立即开始工作……

关键是要读取错误和日志,并找到错误的地方……

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

brew reinstall mysql

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

brew services start mysql

我也有同样的问题。原因很简单。我安装了两个MySQL服务器。一个来自MacPorts,另一个来自下载的包。所以我只是按照这里的说明,从包中卸载了一个。

如何从Mac OS X上卸载MySQL ?

在那之后,MySQL运行得很好。

我也有同样的问题。对我来说,它是在运行mysqld之前的安装时进行brew删除。Homebrew (brew)在卸载之前似乎不会停止服务。

在检查.err文件后,我看到了另一个MySQL副本可能正在运行的日志错误,在终止旧的服务后。然后我可以重新启动新的MySQL安装。