我使用NGOSX的CentOS 6.4。
当我尝试start/stop/restart
mysql服务器(/etc/init.d/mysqld restart)
时,我收到此错误:
MySQL server PID file could not be found! [FAILED]
Starting MySQL..The server quit without updating PID file ([FAILED]/mysql/mysqld.pid).
我该怎么做才能解决这个问题?
谢谢!
答案 0 :(得分:6)
我在CentOS 6.3上遇到了同样的错误,我将MySQL升级到5.6.14,但我保留了旧的my.cnf文件。升级后,MySQL不再启动,给出了与您描述的相同的错误。
问题是我在my.cnf中有这个设置:
table_cache=2048
根据此链接table_cache renamed table_open_cache ..
“似乎在5.5中系统变量table_cache已重命名 table_open_cache .. 在5.6中,如果找到未知变量,mysqld会失败 这意味着从5.5之前的版本升级可以 如果在my.cnf中指定了table_cache,则会出现问题。“
我将上面的一行改为
table_open_cache=2048
MySQL完美开始。
所以,如果您有MySQL 5.5+(可能是较旧的my.cnf),我建议您执行以下操作:
希望这有帮助。
答案 1 :(得分:3)
我将Mac OS升级到10.9.3并在mysql.server restart
上遇到了上述问题以下解决了我的问题
sudo chmod -R o+rwx /usr/local/var/mysql/
sudo chown -R mysql /usr/local/var/mysql/
sudo mysql.server restart
答案 2 :(得分:1)
我发现有时MySQL进程仍在运行。当然,我的OS X Yosemite系统就是这种情况,所以使用以下命令查找名称中显示MySQL的任何进程:
ps aux | grep mysql
然后使用该命令杀死它们
sudo kill -9 PID
,将PID
替换为有问题的进程ID。
答案 3 :(得分:1)
首先确保/var/run/mysqld/mysqld.pid中不存在哪个文件夹/文件
如果目录不存在则将其创建为:
sudo mkdir -p /var/run/mysqld/
如果mysqld.pid不存在,则将其创建为:
sudo touch /var/run/mysqld/mysqld.pid
将所有权更改为:
sudo chown mysql:mysql -R /var/run/mysqld
chmod 775 -R /var/run/mysqld
重启mysql服务
sudo service mysql restart
答案 4 :(得分:0)
检查是否有锁。
/etc/init.d/mysql status
如果操作系统说存在锁定,例如:
ERROR! MySQL is not running, but lock file (/var/lock/subsys/mysql) exists
删除该锁定文件并重新启动。
答案 5 :(得分:0)
我发现这很有效......
# ps aux | grep mysql
root 3668 0.0 0.0 11432 1240 ? S 2014 0:00 /bin/sh /usr/bin/mysqld_safe --datadir=/db/data01 --pid-file=/var/lib/mysql/mysql.pid
mysql 5303 0.1 0.4 1964748 12368 ? S<l 2014 1663:35 /usr/sbin/mysqld --basedir=/usr --datadir=/db/data01 --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/db/logs01/mysql-error.err --open-files-limit=8192 --pid-file=/var/lib/mysql/mysql.pid --socket=/var/lib/mysql/mysql.sock --port=3306
root 12369 0.0 0.0 6376 680 pts/0 S+ 09:05 0:00 grep mysql
# kill -9 3668 5303
# rm /var/lock/subsys/mysql rm: remove regular empty file `/var/lock/subsys/mysql'? y
# service mysql start Starting MySQL (Percona Server).. SUCCESS!