我有 CentOS 6.4 和 NGINX。
当我尝试start/stop/restart
mysql server (/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).
我该怎么做才能解决这个问题?
谢谢!
最佳答案
我在 CentOS 6.3 上遇到了同样的错误,我将 MySQL 升级到 5.6.14,但我保留了旧的 my.cnf 文件。升级后,MySQL 不再启动,出现与您描述的相同的错误。
问题是我在 my.cnf 中有这个设置:
table_cache=2048
根据此链接table_cache renamed table_open_cache ..
"Seem like in 5.5 the system variable table_cache was renamed table_open_cache.. In 5.6 mysqld fails if it finds an unknown variable this means that upgrades from versions earlier than 5.5 can have problems if table_cache is specified in my.cnf."
在我把上面这行改成
之后table_open_cache=2048
MySQL完美启动。
因此,如果您有 MySQL 5.5+(可能还有较旧的 my.cnf),我建议您执行以下操作:
- 从/etc 文件夹中删除 my.cnf 并尝试启动 MySQL
- 如果 MySQL 启动,问题出在 my.cnf 中。一项一项地注释/取消注释所有设置,以查看是什么导致了问题。
希望这对您有所帮助。
关于找不到 MySql 服务器 PID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17875582/