mysqlbinlog命令详解 Part 5 通过位置和时间查看日志
时间:2022-07-23
本文章向大家介绍mysqlbinlog命令详解 Part 5 通过位置和时间查看日志,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
实验环境
此次实验的环境如下
- MySQL 5.7.25
- Redhat 6.10
- binlog模式采用row模式
前面的一些章节我们对mysqldump常用命令进行了讲解
这个专题的内容为mysqlbinlog命令的详解
mysqlbinlog是MySQL中用来处理binlog的工具
这节内容讲如何根据条件来查看特定的位置
1. 根据事件起始位置
1.1 如何查看位置
日志中查看
每个事件从#at position1开始至下一个# at position2结束
postion为具体的数字
如上图所示
INSERT事件的开始位置为1015,结束位置为1064 ,其实end_log_pos也是结束位置
查看当前日志位置
SQL>show master status;
上图代表当前日志记录到000001号日志文件的715号位置,即下个事件的起始位置为715
1.2 应用举例
下面根据上图查看INSERT事件
如不指定stop-position 则会一直到最后
shell> mysqlbinlog -v --start-position=780 --stop-position=1064 /path/to/log/master-bin.000001
注意,这里会强制在开始显示格式描述事件,之后才跳到780
这里我们从780位置开始,即整个插入的开始阶段
如果直接从1015开始会报错,找不到表,即没有映射表的事件
2. 根据事件执行时间
2.1 如何查看执行时间
在 # at position的下一行有时间显示
# at 1015
#190416 14:20:44
2.2 应用举例
如下例子显示了2019-04-16 14:10:56 至2019-04-16 14:12:56 发生的时间
如不指定stop-datetime则表示一直到现在
注意=后不能有空格
mysqlbinlog -v --start-datetime="2019-04-16 14:10:56" --stop-datetime ="2019-04-16 14:12:56" /path/to/log/master-bin.000001
3. 参考链接
https://dev.mysql.com/doc/refman/5.7/en/mysqlbinlog.html
好了 今天的内容就说到这里,下节再见
- MySQL 教程
- MySQL 安装
- MySQL 管理与配置
- MySQL PHP 语法
- MySQL 连接
- MySQL 创建数据库
- MySQL 删除数据库
- MySQL 选择数据库
- MySQL 数据类型
- MySQL 创建数据表
- MySQL 删除数据表
- MySQL 插入数据
- MySQL 查询数据
- MySQL where 子句
- MySQL UPDATE 查询
- MySQL DELETE 语句
- MySQL LIKE 子句
- mysql order by
- Mysql Join的使用
- MySQL NULL 值处理
- MySQL 正则表达式
- MySQL 事务
- MySQL ALTER命令
- MySQL 索引
- MySQL 临时表
- MySQL 复制表
- 查看MySQL 元数据
- MySQL 序列 AUTO_INCREMENT
- MySQL 处理重复数据
- MySQL 及 SQL 注入
- MySQL 导出数据
- MySQL 导入数据
- MYSQL 函数大全
- MySQL Group By 实例讲解
- MySQL Max()函数实例讲解
- mysql count函数实例
- MYSQL UNION和UNION ALL实例
- MySQL IN 用法
- MySQL between and 实例讲解