无法通过套接字“/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'Unable to connect to database:mysql_connect()[function.mysql-connect]:无法通过套接字连接到本地MySQL服务器' /var/lib/mysql/mysql.sock'(2)')1:/usr/local/psa/admin/auto_prepend/auth.php3:93

当SSH进入,并试图重新启动MySQL我得到“超时错误发生尝试启动MySQL守护进程”。

有人可以从中看出一点,因为这有点紧急。 这是一个现场的专用服务器,并没有涉及很长一段时间的configuration方面。

这是一个Centos 5.1安装。

你的,克里斯

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

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

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

以下命令将一目了然地显示所有分区的状态:

 df -h 

另外请注意,InnoDB是一个日志存储引擎。 这意味着您不会通过删除logging来恢复磁盘空间(实际上会释放更多的磁盘空间)。 因此,使用InnoDB来处理不需要InnoDB(或者不需要 InnoDB,就像会话表)的东西会导致存储(和备份)问题。 您可以通过以下方式查看您的InnoDB使用情况:

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

检查MySQL日志文件,看看有没有什么有趣的地方:

[user@box dir]# tail /var/log/mysqld.log

在centos上快速的磁盘空间解决scheme,运行yum clean all

机会是/ var / run / mysqld /不存在。 创build它并将其拥有到mysql:mysql和你的服务器应该启动。