本站(也就是安全者)网站数据库挂了一下午,也没时间处理,晚上回来后尝试restart mysql,发现一直提示shutting down……….关闭不了,也stop不了,服务器重启也不行。可以确信肯定是mysql出问题了。
进入mysql的data目录一大堆名字为mysql-bin.000001 — mysql-bin.000032的文件,加起来占用了快10个G!目录占满了,当然启动不了了!那么这些文件是干什么用的呢?百度之..
这样做主要有以下两个目的:
1:数据恢复
如果你的数据库出问题了,而你之前有过备份,那么可以看日志文件,找出是哪个命令导致你的数据库出问题了,想办法挽回损失。
2:主从服务器之间同步数据
主服务器上所有的操作都在记录日志中,从服务器可以根据该日志来进行,以确保两个同步。
处理方法分两种情况:
1:只有一个mysql服务器,那么可以简单的注释掉这个选项就行了。
vi /etc/my.cnf把里面的log-bin这一行注释掉,重启mysql服务即可。
2:如果你的环境是主从服务器,那么就需要做以下操作了。
A:在每个从属服务器上,使用SHOW SLAVE STATUS来检查它正在读取哪个日志。
B:使用SHOW MASTER LOGS获得主服务器上的一系列日志。
C:在所有的从属服务器中判定最早的日志,这个是目标日志,如果所有的从属服务器是更新的,就是清单上的最后一个日志。
D:清理所有的日志,但是不包括目标日志,因为从服务器还要跟它同步。
也就是说你要是就一台服务器的话就果断删掉吧!
首先vim /etc/my.conf,注释掉这两行
#log-bin=mysql-bin #binlog_format=mixed
然后 cd /usr/local/mysql/var,执行如下命令 强制删除这些文件
rm -rf mysql-bin.* #看清了呀 别手抖删错了...
最后重启mysql即可
/etc/init.d/mysql restart