【问题标题】:What can cause '/var/lib/mysql/mysql.sock' to get deleted?什么会导致“/var/lib/mysql/mysql.sock”被删除?
【发布时间】:2016-05-10 07:25:34
【问题描述】:

突然间,我开始在我的 CentOS WHM Cpanel LAMP 堆栈上收到此错误消息:

Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

我通过 WHM 重新启动了 MySQL 服务器,但 MySQL 再次开始工作,但在几秒钟/几分钟内它就关闭了,并返回了上述错误消息。这种情况发生了好几次。

我在谷歌上搜索了一个解决方案,并确认“/var/lib/mysql/mysql.sock”丢失,并简单地创建了一个空文件“/var/lib/mysql/mysql.sock”,通过重启 MySQL 服务器WHM 和 MySQL 又开始工作了,这次没有宕机。

我的问题是,首先是什么导致了这种情况?

初始重启不应该恢复任何丢失的 /var/lib/mysql/mysql.sock 文件吗?还有,为什么重启成功了,然后又报错了?

如果 /var/lib/mysql/mysql.sock 文件丢失,在我重新创建 /var/lib/mysql/mysql.sock 文件之前应该无法重新启动?

在第一次故障之前,服务器负载确实达到峰值(但之后没有达到峰值)。

另外,我收到了这个错误:

Access denied for user 'root'@'localhost' (using password: YES)

我通过 WHM 更改了密码,阻止了该错误,但随后袜子错误并没有消失。

有什么想法吗?

【问题讨论】:

  • 是 Windows 还是 linux 服务器?
  • @C0dekid 第一句声明 CentOS 并且该文件的路径是 /var/lib/mysql/mysql.sock - 两者都表明它不是 Windows。跨度>

标签: mysql whm


【解决方案1】:

这需要更多调查,但这里有一些需要注意的具体事项。

1.) 当您无法连接到 MySQL 时,您是否使用“服务 mysql 状态”验证它是否正在运行?很可能不是,这也解释了为什么 mysql.sock 会消失(当 MySQL 关闭时,您会看到 mysql.sock 被删除 - 您可以使用“service mysql shutdown”进行测试)

2.) 请注意,即使服务器仍在运行(尽管我怀疑它正在运行),将 mysql.sock 重新创建为纯文件也没有效果。 mysql.sock 是socket,不是普通文件,只能通过重启MySQL来创建。

3.) 最重要的是,您应该浏览您的 /var/lib/mysql/*.err 日志以查找错误,这些错误应该可以为您提供有关问题所在的线索或提示。

4.) 如果 #3 不能帮助澄清您想要检查 Apache 日志是否有异常活动的事情。很多数据库崩溃或关闭都与 DOS 攻击、黑客攻击甚至失败的 cPanel 更新有关(根据我的经验,最有可能的顺序)。

【讨论】:

    猜你喜欢
    • 2011-08-05
    • 2016-05-23
    • 1970-01-01
    • 2021-10-23
    • 1970-01-01
    • 1970-01-01
    • 2016-11-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多