1、什么是binlog?
binlog是mysql的日志工具,binlog日志可以记录insert、update、delete的sql和操作时间。
因为log数据是二进制格式的,所以称为binary log,即binlog。
2、binlog有什么用?
排查数据问题
比如线上出现了莫名其妙的数据,就可以通过binlog来查询是什么sql导致了这个数据问题。
当数据丢失时,可以恢复数据
当某段时间的数据丢失时,可以按照时间查询binlog日志,从而按照binlog恢复数据。
做主从同步用
从库读取主库的binlog,来做主从同步。
3、如何启用和配置binlog(以linux系统为例)?
打开 /etc/mysql/my.cnf文件
启用binlog
找到
#log_bin = /var/log/mysql/mysql-bin.log
去掉注释
log_bin = /var/log/mysql/mysql-bin.log
如此,就打开了binlog,同时设置了binlog的存储路径。
配置binlog
大多数时候,我们只需要记录mysql里某个database的binlog。
并且,由于binlog文件的不断扩充,log文件会变得很大,这样会占用你大量的磁盘空间,并且会使mysql特别慢。
为此,我们可以做如下配置:
binlog-do-db="test" #设置需要记录binlog的database
ex