【mysql实践】如何查看阿里云RDS的MySQL库中的binlog日志

1 篇文章 0 订阅

背景:

工作中我们为了查看MySQL中数据修改的历史记录时,会通过查看binlog日志。但由于binlog日志是二进制文件,需要解析之后,才能用文本查看工具打开。这次笔者使用flink进行实时统计时就多次遇到了这个问题。经常看笔者最近博客的可以知道,笔者所在的公司项目部目前采用的是阿里云的MysqlRDS。那么阿里云的RDS应该如何操作呢?下面就总结一下防止忘记。也希望对大家有一定的作用。

分析及操作

1、查找日志

首先我们查看mysql中的binlog日志文件,执行如下命令:

SHOW BINARY LOGS;

在这里插入图片描述
这一步是为了了解当前的数据的binlog写在那个文件,当然这样还是看不出来需要查看阿里云工作台 >> 云数据库RDS版 >> 找到相关实例 >> 进入管理界面
在这里插入图片描述>> 找到备份恢复 >> 基础备份列表 >> 日志备份 >> 选择相应时间段的biglog
在这里插入图片描述
我们通过当前时间是18:00看,数据文件还没有生成,这里说一下,如果日志文件还没有结束再阿里云坑台是看不到的,如果想要理解结束当前的日志写文件可以执行如下操作:

FLUSH LOGS;

2、下载binlog日志文件

由于线上笔者没有执行,等待生成文件后笔者下载了文件,具体下载操作如下:阿里云给了两个地址一个是内网地址一个是外网地址,笔者这里使用了内网地址,毕竟内网地址不用花钱嘿嘿。
在这里插入图片描述
如果大家想了解官网给的资料也可以看这里提示板的参考资料给的详细操作
我们复制该链接,然后在服务器下载如下命令:

nohup curl -C - --retry 10 "备份文件下载地址" -o 自定义文件名 > 下载输出日志到对应文件 &

示例:

nohup curl --retry 10 "http://rdslog-bj-v4-3az.oss-cn-beijing-internal.aliyuncs.com/custins67712248/hostins25128214/mysql-bin.000648?OSSAccessKeyId=LTAI4G2wxd32KLGARfidLvLd&Expires=1688897495&Signature=mUEef7pC%2B5QeWbRyUllbRc%2FuSkw%3D" -o mysql-bin.000396 > ./download-000396.log &
  • –retry 10:任务失败时的重试次数,以上示例表示重试10次。
  • -C -:支持自动断点续传。
  • -o:下载的目标路径及文件名。

3、解析日志

然后使用mysql命令解析下载binlog日志:

 mysqlbinlog -vv --base64-output=DECODE-ROWS mysql-bin.000648 > /data/tmp/mysql-bin-000648.log
  • 解析: mysql-bin.000648是从rds上下载的binlog备份文件,解析之后的文件放在mysql-bin-000648.log文件中

4、查看日志

解析之后的log文件,可以直接用vi、cat之类的文本查看工具直接访问

总结:

此次操作仅为备忘,也希望这篇【mysql实践】如何查看阿里云RDS的MySQL库中的binlog日志 对大家有帮助。

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

扫地增

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值