前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >mysqlbinlog命令详解

mysqlbinlog命令详解

作者头像
bsbforever
发布2020-08-19 15:57:52
发布2020-08-19 15:57:52
1.3K00
代码可运行
举报
运行总次数:0
代码可运行

前面的一些章节我们对mysqldump常用命令进行了讲解

这个专题的内容为mysqlbinlog命令的详解

mysqlbinlog是MySQL中用来处理binlog的工具

1. 命令格式

我们使用如下命令来得到二进制日志文件的十六进制内容

代码语言:javascript
代码运行次数:0
复制
shell> mysqlbinlog --hexdump /path/to/log/master-bin.000001

结果如上图,内容以注释符号#开头

2. 命令解析

下面我们根据上图中的内容进行解析

事件(event)描述了数据库内容的状态,包含了数据修改,服务器重启等

以二进制的格式写入日志文件

# at 4 该事件开始的位置(position )为4

190410 10:37:26 代表该事件发生的时间

server id 为 MySQL实例的ID号,同一个复制环境中ID需不一样

end_log_pos为该时间结束的位置为123,即下一个时间开始的位置

接下来分析十六进制的内容

  • position 该event在日志文件中的位置,即4
  • timestamp 代表事件开始的时间
  • type 代表事件类型的代码
  • master id 即生成该事件的主库的server id,在这里为该数据库实例的server id
  • size 为该事件的大小(bytes),即end_position-start_position,即123-4=119
  • master pos 为原始master日志文件中下一个事件的位置,即123,在这里为该数据库
  • flag 为事件标志的值

之后是该事件的具体内容

BINLOG关键字后是该事件的二进制内容,这个后面再说

综上所述,上面内容为该事件

  • 开始位置为4
  • 开始时间为 2019190410 10:37:26
  • 类型代码为15,即FORMAT_DESCRIPTION_EVENT,具体内容看上节
  • server_id为 11141429
  • size为77 即十进制的119
  • 下一个事件的位置为7b,即十进制的123

3. 参考链接

https://dev.mysql.com/doc/refman/5.7/en/mysqlbinlog-hexdump.html

好了 十六进制的内容就说到这里,下节内容为查看具体的语句

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 宅必备 微信公众号,前往查看

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

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 命令格式
  • 2. 命令解析
  • 3. 参考链接
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档