我在 MacBook Pro 上使用 MySQL,过去两年运行良好。一周前它突然停止运行,我无法再次重新启动它。
我已将权限更改/usr/local/mysql
为 0777,并将所有者更改为 mysql。
当我尝试启动 mysql (sudo /usr/local/mysql/bin/mysqld_safe
或sudo /usr/local/mysql/support-files/mysql.server start
)时,出现以下错误:
ERROR! The server quit without updating PID file (/usr/local/mysql/data/[COMPUTERNAME].pid)
或者
mysqld_safe mysqld from pid file /usr/local/mysql/data/[COMPUTERNAME].pid ended.
当我打开 .err 文件时,看到以下错误:
140222 8:10:30 [ERROR] /usr/local/mysql/bin/mysqld: Can't create/write to file '/usr/local/mysql/data/[COMPUTERNAME].pid' (Errcode: 13)
140222 8:10:30 [ERROR] Can't start server: can't create PID file: Permission denied
编辑:
以下是输出sudo ls -ld / /usr /usr/local /usr/local/mysql /usr/local/mysql/data /usr/local/mysql-5.6.16-osx10.7-x86_64
drwxr-xr-x 36 root wheel 1292 Feb 20 21:16 /
drwxr-xr-x@ 12 root wheel 408 Oct 26 10:12 /usr
drw-r--r-- 49 root wheel 1666 Feb 22 09:06 /usr/local
lrwxr-xr-x 1 root wheel 27 Feb 22 09:06 /usr/local/mysql -> mysql-5.6.16-osx10.7-x86_64
drwxr-xr-x 17 _mysql wheel 578 Feb 22 09:06 /usr/local/mysql-5.6.16-osx10.7-x86_64
drwxr-xr-x 10 _mysql wheel 340 Feb 22 09:07 /usr/local/mysql/data
跑步ls -ld /usr/local/mysql/data/*.pid
给予ls: /usr/local/mysql/data/*.pid: No such file or directory
答案1
drw-r--r-- 49 root wheel 1666 二月 22 09:06 /usr/local
事实就在眼前。执行(目录遍历)权限被拒绝。对于 mysql 用户以及其他所有用户都是如此。
权限和所有权/usr/local
是 Mac OS 10 中普遍存在的问题,原因有很多,我在此就不详述了。
chmod a + x /usr/local(当然以超级用户身份运行)是你的朋友。
避免更改目录所有权或组的建议。这是一场即将发生的安全灾难,正如一些人指出的那样在以前出现过此类情况的地方。