无法通过套接字“/var/lib/mysql/mysql.sock”连接到本地 MySQL 服务器

无法通过套接字“/var/lib/mysql/mysql.sock”连接到本地 MySQL 服务器

一夜之间,我们的一台服务器连接过多。重启后,我现在通过 Plesk 获得以下信息:

错误:PleskFatalException 无法通过套接字“/var/lib/mysql/mysql.sock”连接到本地 MySQL 服务器 (2)

0:/usr/local/psa/admin/plib/common_func.php3:108 psaerror(string'无法连接到数据库:mysql_connect()[function.mysql-connect]:无法通过套接字'/var/lib/mysql/mysql.sock'连接到本地 MySQL 服务器(2)')1:/usr/local/psa/admin/auto_prepend/auth.php3:93

当通过 SSH 登陆并尝试重启 MySQL 时,出现“尝试启动 MySQL 守护进程时发生超时错误”。

有人能解释一下吗,因为情况有点紧急。这是一台实时专用服务器,很长时间没有进行配置了。

这是 Centos 5.1 安装。

你的,克里斯

答案1

如果是磁盘空间问题,可能需要清除 /var/log 中的一些日志文件以使服务器正常运行;从长远来看,您可能需要考虑将 mysql 文件夹移动到其他驱动器,或者找到某种缩小数据库的方法(可能通过存档旧数据)。如果可能的话,可能是时候考虑为服务器获取更大的磁盘了。

答案2

正如已经说过的 - 您需要检查 MySQL 日志文件。显然 MySQL 无法启动。希望这些日志文件中有一些有用的错误可以为您指明正确的方向。我见过的大多数情况都是因为 MySQL 存储原始数据的分区已满。默认情况下,这将是 /var 分区。

MySQL 日志的默认位置是/var/log/mysqld.log

以下命令将让您一目了然地看到所有分区的状态:

df -h

答案3

还要注意,InnoDB 是一个日志存储引擎。这意味着您不能通过删除记录来恢复磁盘空间(实际上您会损失更多的磁盘空间)。因此,对于不需要 InnoDB 的东西,请使用 InnoDB(或不需要是 InnoDB,例如会话表)将导致存储(和备份)问题。您可以使用以下命令检查 InnoDB 使用情况:

SELECT TABLE_SCHEMA, TABLE_NAME, ENGINE FROM information_schema.TABLES WHERE ENGINE = 'InnoDB';

答案4

Centos 上快速解决磁盘空间问题,运行yum clean all

相关内容