前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >快速获取binlog文件的开始时间

快速获取binlog文件的开始时间

原创
作者头像
保持热爱奔赴山海
修改2024-09-28 08:24:29
1020
修改2024-09-28 08:24:29
举报
文章被收录于专栏:数据库相关

大数据那边有个需求,希望能知道上游的MySQL的binlog文件的文件名和开始时间,用于偶尔出现的cdc的修数据用(PS:如果CDC时候用了GTID的模式话就不需要用到这里的方法了)。

简单写个脚本,如下:

代码语言:txt
复制
user='dts'
passwd='123456'
host='192.168.31.181'

mysql -u${user} -p${passwd} -h ${host} 2>/dev/null -BNe 'show master logs;' > binlog_list_tmp
cat binlog_list_tmp | awk '{print $1}' > binlog_list

while read line ; do
	echo "------------------------------------"
	echo ${line}
	mysqlbinlog -u ${user} -p${passwd} -h ${host} --read-from-remote-server ${line} -vv --base64-output=decode-rows --start-position=4 --stop-position=123 2>/dev/null | egrep 'Start: binlog' | awk '{print $1 " " $2}'
done < binlog_list

注意上面的--stop-position的值随便填个就行,只要比4大就行。

脚本的运行结果类似如下:

代码语言:txt
复制
------------------------------------
binlog.000001
#240926 14:39:32
------------------------------------
binlog.000002
#240926 18:03:59
------------------------------------
binlog.000003
#240926 18:04:13

关于mysqlbinlog的,还可以参考老叶的这篇 https://cloud.tencent.com/developer/article/2185095

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档