本案例基于mysql5.7.16实验
1、在linux中进入mysql查询binlog是否打开,执行命令如下:
mysql -u root -p
2、查询binlog是否开启命令如下,如果log_bin为OFF则证明mysql的binlog没有打开
show variables like '%log_bin%';
3、退出mysql终端,修改/etc/my.cnf,执行命令如下:
sudo vim /etc/my.cnf
在文件中输入如下语句
server-id=1
log-bin=mysql-bin
binlog_format=row
binlog-do-db=cdc
server-id=1:为当前服务取一个唯一的 id(MySQL5.7 之后需要配置)
log-bin=mysql-bin:这个参数表示启用 binlog 功能,并指定 binlog 的存储目录
binlog_format=row:Row 格式的日志内容会在binlog中非常清楚地记录下每一行数据修改的细节
binlog-do-db=cdc:binlog 日志只记录指定库的更新
4、重启mysql
sudo systemctl restart mysqld
5、 验证binlog是否开启
show variables like '%log_bin%';
log_bin已经是ON了,证明已经开启binlog,去/var/lib/mysql目录看是否有日志生成,找到如下文件,证明已经完成binlog文件的生成了