A-A+

磁盘用尽MySQL无法启动:ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mys解决办法

2014年11月13日 Linux 暂无评论 阅读 4,275 views 次

昨日有台客户的服务器突然网站打不开,提示数据库连接不上:

Discuz! Database Error

(2002) notconnect

于是登录服务器重新启动mysql,提示:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mys

一开始以为是客户错误修改了文件权限,检查发现不是。然后查看磁盘空间,果然,磁盘用尽了。

磁盘空间用尽

 

这里说明一下,因为discuz论坛数据量大,会导致产生大量日志文件,于是到/usr/local/mysql/var目录下查看,果然日志文件占用了10多个G。

于是清理日志文件:

一、删除日志:

执行:/usr/local/mysql/bin/mysql -u root -p

输入密码登录后再执行:reset master;

再输入:quit 退出mysql命令模式。

二、清零错误日志:

cat /dev/null > /usr/local/mysql/var/xxxxx.err

三、关闭MySQL日志功能:

修改/etc/my.cnf 文件,找到

log-bin=mysql-bin
binlog_format=mixed

再这两行前面加上#,将其注释掉,再执行/etc/init.d/mysql restart即可。

四、如果实在想保留日志,可以在/etc/my.cnf里加入expire_logs_days = 10 然后重启mysql,这样10天就会自动清理日志。

切记,先清理日志,再禁用日志功能,否则禁用后清理日志会提示错误。

给我留言