- A+
给福利档社区更换VPS主机时候备份数据库,发现数据库路径的/usr/local/mysql/var下存在数个1G的“mysql-bin.000**”文件。
百度一下,有朋友说:没有特殊情况下,默认安装的LNMP一键包环境是没有关闭MYSQL日志的,会导致生成mysql-bin.0000*日志文件。
在MySQL数据库中,mysql-bin.000001、mysql- bin.000002等文件是数据库的操作日志,例如UPDATE一个表,或者DELETE一些数据,即使该语句没有匹配的数据,这个命令也会存储到日志文件中,还包括每个语句执行的时间,也会记录进去的。
这样做主要有以下两个目的:
1:数据恢复
如果你的数据库出问题了,而你之前有过备份,那么可以看日志文件,找出是哪个命令导致你的数据库出问题了,想办法挽回损失。
2:主从服务器之间同步数据
主服务器上所有的操作都在记录日志中,从服务器可以根据该日志来进行,以确保两个同步。
其实对于日常做站、个人博客和大多数小网站而言,这个功能完全没有用,甚至可能导致记录过多记录文件过大而耗尽磁盘资源。下边说一下如何关闭该Mysql日志功能。
登录VPS,找到配置文件(在线使用Linux下的文本编辑器VI编辑或者下载到本地修改):
/etc/my.cnf
找到
log-bin=mysql-bin
binlog_format=mixed
这两行代码,在前面#注释掉就可以。
#log-bin=mysql-bin
#binlog_format=mixed
重启MYSQL生效。
如何删除这些日志记录数据?
方法一、简单粗暴的直接在使用SFTP登录的FTP工具里边删除;
方法二、使用指令清理
1。使用PuTTy或者其他工具登录VPS;
2。登录mysql:
/usr/local/mysql/bin/mysql -u root -p
Enter password:
如果mysql管理员帐号不是root,请将root改为自己的用户名。回车运行指令后会要求输入root的密码,键入密码回车登录。
此时为:
mysql >
输入指令:
reset master;
完成清理。
以上小部分内容参考@老左的《解决LNMP环境mysql-bin.0000*日志占用资源问题及关闭Mysql日志》。