mysql开启binlog日志

Scroll Down

查看binlog日志是否开启

执行sql

show variables like '%log_bin%';

OFF为未开启,ON为开启
image.png

修改配置文件

在/etc/my.cnf中的[mysqld]下面新增

log-bin=mysql-bin
binlog_format=row

binlog_format值

  • STATEMENT:每一条会修改数据的sql语句会记录到binlog中(不推荐)
  • ROW:不记录每条sql语句的上下文信息,仅需记录哪条数据被修改了,修改成什么样了(推荐)
  • MIXED:MySQL会根据执行的SQL语句选择日志保存方式,自动在ROW和STATEMENT两种模式中选择

还可以加一些配置来限制日志过大

#binlog过期清理时间
expire_logs_days=7

#binlog每个日志文件大小
max_binlog_size=100m

#binlog缓存大小
binlog_cache_size=4m

#最大binlog缓存大小
max_binlog_cache_size=512m

重启mysql服务

service mysqld restart

查看binlog日志已开启
image.png

清理binlog日志

mysql清理binlog日志