今天收到监控邮件说博客访问失败。打开页面一看,登录后台出现502 Bad Gateway
http://img.8090st.com/2015/06/1.png
ping了一下VPS发现机器是通的,SSH连接上去看了下Nginx日志发现没问题,重启lnmp的时候发现Mysql起不来,问题源头基本找到。
http://img.8090st.com/2015/06/2.png
居然是因为磁盘100%爆满了无法导致Mysql起不来
du –h –max-depth=1 列出来usr目录占用了18G猜到是某些日志文件导致的原因
http://img.8090st.com/2015/06/3.png
/usr/ local 占用17G
#cd /usr/
#du –h –max-depth=1
http://img.8090st.com/2015/06/4.png
仔细想想机器local目录也没有安装什么软件。进到mysql/var/
果然啊,/var目录爆了。
http://img.8090st.com/2015/06/5.png
/usr /local/mysql/var下面的mysql-bin.0000系列文件占用磁盘空间达到惊人的17G+,通过搜索发现这些是数据库 的操作日志,例如UPDATE一个表,或者DELETE一些数据,即使该语句没有匹配的数据,这个命令也会存储到日志文件中,还包括每个语句执行的时间, 也会记录进去的。难怪磁盘空间会满,感情都是mysql的日志文件搞鬼呀!
知道了问题所在,那么接下来便是如何解决了,这些占用磁盘空间的日志文件可以通过mysql命令来将其清除掉即可,通过
# /usr/local/mysql/bin/mysql -u root -p
输入mysql的root密码进入mysql命令模式,再执行:
# mysql> reset master;
http://img.8090st.com/2015/06/6.png
用命令#df –h 查看空间容量时发现,已经恢复到原来的状态了:
http://img.8090st.com/2015/06/7.png
打开博客可以正常访问了
为了防止以后再次出现此类状况,直接关闭Mysql的log-bin日志功能。
#vim /etc/my.cnf
在里面找到:log-bin=mysql-bin并将其注释掉重启mysql即可生效了!这样便不会产生mysql-bin系列日志文件了。
#log-bin=mysql-bin;
:wq保存退出。
最后重新启动mysql
/usr/local/mysql/bin/mysqld start
Starting MySQL. SUCCESS!
启动成功!
http://img.8090st.com/2015/06/1.png
ping了一下VPS发现机器是通的,SSH连接上去看了下Nginx日志发现没问题,重启lnmp的时候发现Mysql起不来,问题源头基本找到。
http://img.8090st.com/2015/06/2.png
居然是因为磁盘100%爆满了无法导致Mysql起不来
du –h –max-depth=1 列出来usr目录占用了18G猜到是某些日志文件导致的原因
http://img.8090st.com/2015/06/3.png
/usr/ local 占用17G
#cd /usr/
#du –h –max-depth=1
http://img.8090st.com/2015/06/4.png
仔细想想机器local目录也没有安装什么软件。进到mysql/var/
果然啊,/var目录爆了。
http://img.8090st.com/2015/06/5.png
/usr /local/mysql/var下面的mysql-bin.0000系列文件占用磁盘空间达到惊人的17G+,通过搜索发现这些是数据库 的操作日志,例如UPDATE一个表,或者DELETE一些数据,即使该语句没有匹配的数据,这个命令也会存储到日志文件中,还包括每个语句执行的时间, 也会记录进去的。难怪磁盘空间会满,感情都是mysql的日志文件搞鬼呀!
知道了问题所在,那么接下来便是如何解决了,这些占用磁盘空间的日志文件可以通过mysql命令来将其清除掉即可,通过
# /usr/local/mysql/bin/mysql -u root -p
输入mysql的root密码进入mysql命令模式,再执行:
# mysql> reset master;
http://img.8090st.com/2015/06/6.png
用命令#df –h 查看空间容量时发现,已经恢复到原来的状态了:
http://img.8090st.com/2015/06/7.png
打开博客可以正常访问了
为了防止以后再次出现此类状况,直接关闭Mysql的log-bin日志功能。
#vim /etc/my.cnf
在里面找到:log-bin=mysql-bin并将其注释掉重启mysql即可生效了!这样便不会产生mysql-bin系列日志文件了。
#log-bin=mysql-bin;
:wq保存退出。
最后重新启动mysql
/usr/local/mysql/bin/mysqld start
Starting MySQL. SUCCESS!
启动成功!
编辑回复