找不到 MySql 服务器 PID

标签 mysql linux nginx

我有 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/

相关文章:

php - 为什么我的 mysqli 实例在单元测试时失败?

mysql - 通过 LEAD/LAG 或递归 CTE 更新?

django - 使用Nginx和Gunicorn运行多个Django项目

ruby-on-rails - 使用 SSL 的 Nginx 后面的 Rails 5 中的 InvalidAuthenticityToken

linux - 从 crontab 回显 o/p

nginx - 如何在 nginx 中更改代理服务器响应的状态码?

mysql - SQL 查询 WHERE CLAUSE 未按预期工作

MySQL 跨不同数据库的 MERGE 表

linux - Git 克隆/下载历史

python - 如何查看安装另一个包需要哪些包?