日期:2014-05-16  浏览次数:20810 次

由于日志占满空间导致MySQL无法启动的问题-已解决

昨天采集完数据准备发布的时候,一直提示错误,重启一下服务器,重启nginx没有问题,但是重启MYSQL却启不来了。google了一下,问题源头基本找到。

?

?

?

看了一下Mysql的错误日志,问题在这里。

?

131210? 1:49:55 [Warning] Disk is full writing './mysql-bin.000016' (Errcode: 28). Waiting for someone to free space... (Expect up131210 09:24:14 mysqld_safe A mysqld process already exists

?

居然是因为磁盘满了无法写入日志导致Mysql起不来

?

[root@AY130306220112792564 mysql]# ll --block-size=MB
total 1804MB
drwx------ 2 mysql mysql?? 1MB Mar 12? 2013 a0129104235
-rw-r----- 1 mysql root??? 1MB Dec 10 09:30 AY130306220112792564.err
-rw-rw---- 1 mysql mysql?? 1MB Dec? 9 14:00 AY130306220112792564.pid
drwx------ 2 mysql mysql?? 1MB Apr 29? 2013 db_qbzzx
drwx------ 2 mysql mysql?? 1MB Dec? 6 12:38 green
-rw-rw---- 1 mysql mysql 330MB Jul 27 20:48 ibdata1
-rw-rw---- 1 mysql mysql?? 6MB Dec? 9 13:59 ib_logfile0
-rw-rw---- 1 mysql mysql?? 6MB May? 6? 2013 ib_logfile1
drwx------ 2 mysql root??? 1MB Mar? 8? 2013 mysql
-rw-rw---- 1 mysql mysql?? 1MB Mar? 8? 2013 mysql-bin.000001
-rw-rw---- 1 mysql mysql?? 2MB Mar? 8? 2013 mysql-bin.000002
-rw-rw---- 1 mysql mysql?? 1MB Mar? 8? 2013 mysql-bin.000003
-rw-rw---- 1 mysql mysql?? 1MB Mar? 8? 2013 mysql-bin.000004
-rw-rw---- 1 mysql mysql?? 1MB Mar? 8? 2013 mysql-bin.000005
-rw-rw---- 1 mysql mysql 337MB May 23? 2013 mysql-bin.000006
-rw-rw---- 1 mysql mysql?? 2MB Jun? 2? 2013 mysql-bin.000007
-rw-rw---- 1 mysql mysql?? 4MB Jul 12 14:16 mysql-bin.000008
-rw-rw---- 1 mysql mysql?? 1MB Jul 12 15:34 mysql-bin.000009
-rw-rw---- 1 mysql mysql?? 1MB Jul 14 19:14 mysql-bin.000010
-rw-rw---- 1 mysql mysql 162MB Jul 27 12:32 mysql-bin.000011
-rw-rw---- 1 mysql mysql?? 1MB Jul 27 20:48 mysql-bin.000012
-rw-rw---- 1 mysql mysql 897MB Oct 15 14:52 mysql-bin.000013
-rw-rw---- 1 mysql mysql? 61MB Dec? 9 13:06 mysql-bin.000014
-rw-rw---- 1 mysql mysql?? 1MB Dec? 9 13:14 mysql-bin.000015
-rw-rw---- 1 mysql mysql?? 1MB Dec 10 09:34 mysql-bin.000016
-rw-rw---- 1 mysql mysql?? 1MB Dec? 9 14:00 mysql-bin.index

?

基本上就是被这些玩意占满了,网上都说可以直接删除(此操作最好在Mysql服务停止时进行,因为当前日志使用的话无法删除,而且有可能导致一些其它问题,不过用mysql>reset master命令可以直接清空日志)

?

[root@AY130306220112792564 mysql]# rm -f mysql-bin.*

?

?

为了防止再次出现此类状况,可以直接关闭Mysql的log-bin日志功能

?

[root@AY130306220112792564 mysql]# vim /etc/my.cnf

?

找到:
log-bin=mysql-bin
binlog_format=mixed

?

在前面加上#注释掉,:wq!保存退出

?

?

启动Mysql服务,还是启动不起来。一生气,直接服务器重启,好了。

?

我的爱上绿生活又可以访问了吐舌头