查看binlog日志是否开启
执行sql
show variables like '%log_bin%';
OFF为未开启,ON为开启
修改配置文件
在/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日志已开启