错误!服务器退出但不更新 PID 文件

Posted

技术标签:

【中文标题】错误!服务器退出但不更新 PID 文件【英文标题】:ERROR! The server quit without updating PID file 【发布时间】:2017-08-28 14:55:38 【问题描述】:

我在另一篇文章中看到过这个问题,但我有一个不同之处:

我正在努力按照https://www.telepieza.com/wordpress/2008/03/13/replicar-bases-de-datos-mysql-en-servidores-locales-o-remotos/ 中的说明进行操作

但我在我的服务器中原来的行:#log-bin=mysql-bin 被注释 (#)

如果我让不带 # 的行重新启动 MySql,则服务不会启动并显示错误:

ERROR! MySQL server PID file could not be found!
Starting MySQL.. ERROR! The server quit without updating PID file (/var/lib/mysql/xxxxxx.pid).

感谢您的帮助

----------------- 为评论添加:

2017 Log

【问题讨论】:

错误只是告诉你它无法启动mysqld。您应该阅读 MySQL 错误日志以获取有关 为什么 无法启动的更多具体信息。您的 MySQL 错误日志可能位于 /var/lib/mysqld.err/var/lib/<hostname>.err,但这可能会有所不同。 这是错误日志 141023 12:39:48 [注意] /usr/sbin/mysqld: Shutdown complete 141023 12:39:48 mysqld_safe mysqld from pid file /var/lib/mysql/sd -941934-l.dattaweb.com.pid 结束 141023 15:39:10 mysqld_safe 使用 /var/lib/mysql 中的数据库启动 mysqld 守护进程 141023 15:39:10 [注意] 插件“FEDERATED”已禁用。 141023 15:39:10 InnoDB:InnoDB 内存堆已禁用 141023 15:39:10 InnoDB:互斥锁和 rw_locks 使用 GCC 原子内置函数 这些时间戳来自 2014 年 10 月 23 日。你的服务器的系统时钟是这样设置的吗?您在查看正确的错误日志文件吗? 这是我发现的唯一 .err... 我在上面的帖子中添加了 ftp 文件夹的图像描述。请注意,.pid 有 28/08/2017 更新 嗯,我看到 .pid 文件有一个当前日期为 2017-08-28 的时间戳,所以这是一个旧的错误日志文件,与今天的故障排除无关。您的服务器上必须有另一个 .err 日志文件。例如,在 CentOS 上,它有时位于 /var/log/mysqld.log 或 /var/log/mysql/mysql.log 中。该位置可能在 /etc/my.cnf 中自定义定义。 【参考方案1】:

在您的错误日志中,我看到它无法找到它期望找到的二进制日志文件的错误。因此,您的部分或全部二进制日志文件已过期或被删除或其他什么。但是mysql-bin.index中还是有一些mysql-bin.000019的引用。

我查看了您之前发布的屏幕截图,发现您的 mysql-bin.index 的日期为 2017-05-18。所以无论如何,它已经过时了三个月。我猜有人为了节省空间而删除了旧的二进制日志,但没想到要删除二进制日志索引文件。

如果你想用干净的二进制日志文件重新开始,只需删除所有 mysql-bin.* 文件(包括 mysql-bin.index),然后启动 mysqld。启动会自动创建新的二进制日志,以mysql-bin.000001开头。

请注意,如果您有任何依赖此实例作为其主实例的复制从属服务器,则您必须使用新的备份和新的 binlog 文件名重新初始化它们。

【讨论】:

以上是关于错误!服务器退出但不更新 PID 文件的主要内容,如果未能解决你的问题,请参考以下文章

错误!服务器退出而不更新 PID 文件 XAMPP

MySQL 数据库未启动 - 错误!服务器退出而不更新 PID 文件 - XAMPP OS X

OS X El Capitan 上的 MySQL 5.7.9:错误服务器退出而不更新 PID 文件

启动 pid-file 的 MySQL.Manager 退出而不更新 fi 错误

kill -HUP pid 更改配置后不重新启动服务,动态更新配置文件

当mysql停止在xampp中工作时该怎么办?