1、查看mysqlbinlog是否已经开启

show variables like '%log_bin%';

log_bin: ON是OFF否已经开启binlog

log_bin_basename: binlog所在路径的文件开头前缀名

lob_bin_index: binlog文件的索引文件所在路径

2、若log_bin=OFF,则开启log_bin

-- 退出mysql client
exit;

-- 配置my.cnf 开启log_bin
vim /etc/my.cnf

追加内容:

#启用binlog,并指定了binlog的文件名前缀。binlog会以 master 开头命令,记录数据库所有变更操作,包含增删改
log_bin=master
#每台MySQL服务器的唯一标识
server-id=1
#格式化方式 flinkcdc基于debezium开发,仅支持mysqlbinlog row格式文件
binlog_format=row

3、Linux重启Mysql服务

systemctl restart mysql

4、查看正在写入的binlog 文件名

show master status;

查看binlog文件:

sudo mysqlbinlog --base64-output=decode-rows -vv --start-datetime="2024-06-14 14:30:00" --stop-datetime="2124-06-14 00:00:00" /var/lib/mysql/master.00000x

--base64-output:该参数用来控制binlog日志解析的时候,是否输出base64编码的内容。它的取值范围有:auto、decode-rows、never

--v: verbose,把对数据库的各种操作解析为可以读的SQL语句

例如:

-- mysql执行
insert into sync_db.student (id, name, age)
values (7, 'ds', 77);

binlog对应:

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐