热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

mysqlbinlog命令工具的使用

使用语法mysqlbinlog[options]log-files常用参数说明参数描述-?,--help帮助信息--base64-outputname输出格式,‘

使用语法
mysqlbinlog [options] log-files

常用参数说明


参数描述
-?, --help帮助信息
--base64-output=name输出格式,‘auto’:默认自动;‘never’:以binlog事件格式输出;‘decode-rows’:以注释方式输出pseudo-SQL
-d, --database=name只列出该数据库的条目(只用本地日志)
--bind-address绑定的IP地址
-h, --host=name获取给定主机的mysql服务器的二进制日志
-p, --password[=name]连接的密码
-u, --user连接远程服务器的用户
-P, --port=端口
-R, --read-from-remote-server从MySQL服务器读取二进制日志
--raw与-R一起使用,输出原始的binlog日志数据
--start-datetime=name解析日志开始的时间
--stop-datetime=name解析日志结束的时间
-j, --start-position解析日志开始的位点
--stop-position=解析日志结束的位点
-v, --verbose详细信息
-f, --force-read强制继续读取,若不能识别的事件会会输出警告信息
-o, --offset=N跳过前N个条目
-s, --short-form只显示日志中包含的语句,不显示其他信息
--character-sets-dir=name字符集路径信息
-S, --socket=namesocket
-D, --disable-log-bin禁用二进制.如果使用-to-last-logs选项将输出发生给同一台mysql服务器,可以避免无限循环。该选项在崩溃恢复时也很有用,可以避免的复制的已经记录的语句。该选项需要super权限。
-t, --to-last-log在mysql服务器中请求的二进制日志的结尾的不停止,而是继续打印直到最后一个二进制日志的结尾。如果将输出发送给同一台mysql服务器,会导致无限循环,该选项要--read-from-remote-server
-F, --force-if-open默认开启,如果binlog没有正确关闭,强制关闭
--connection-server-id从库的server-id
-H, --hexdump在注释中显示十六进制和ASCII事件转储
-l, --local-load=name文件中为LOAD DATA INFILE准备本地临时文件指定的目录
--skip-gtids跳过GTID
--include-gtids=name打印时间提供的GTID
--exclude-gtids=name打印所有事情提供的GTID
--print-table-metadata打印存储于Table_map_log_event的metadata信息

实例测试

## binlog日志文件解析
mysqlbinlog --base64-output=decode-row /data/mysql_log/mysql-bin.000008 -v## 解析指定时间
mysqlbinlog --base64-output=decode-row /data/mysql_log/mysql-bin.000008 -v --start-datetime='2022-03-02 14:30:30'## 解析指定位点
mysqlbinlog --base64-output=decode-row /data/mysql_log/mysql-bin.000008 -v --start-position=6199 --stop-position=6319

## 解析后的文件信息格式
...
....
SET TIMESTAMP=1646202630/*!*/;
BEGIN
/*!*/;
# at 6199
#220302 14:30:30 server id 1033306 end_log_pos 6248 CRC32 0x56411c87 Table_map: `test`.`bb` mapped to number 114
# at 6248
#220302 14:30:30 server id 1033306 end_log_pos 6319 CRC32 0xeb502b34 Write_rows: table id 114 flags: STMT_END_F
### INSERT INTO `test`.`bb`
### SET
### @1=1
### @2=16
### INSERT INTO `test`.`bb`
### SET
### @1=2
### @2=17
### INSERT INTO `test`.`bb`
### SET
### @1=3
### @2=18
### INSERT INTO `test`.`bb`
### SET
### @1=4
### @2=20
# at 6319
#220302 14:30:30 server id 1033306 end_log_pos 6350 CRC32 0x9fd4e6c5 Xid = 831
COMMIT/*!*/;

推荐阅读
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 本文由编程笔记小编整理,介绍了PHP中的MySQL函数库及其常用函数,包括mysql_connect、mysql_error、mysql_select_db、mysql_query、mysql_affected_row、mysql_close等。希望对读者有一定的参考价值。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • 本文介绍了为什么要使用多进程处理TCP服务端,多进程的好处包括可靠性高和处理大量数据时速度快。然而,多进程不能共享进程空间,因此有一些变量不能共享。文章还提供了使用多进程实现TCP服务端的代码,并对代码进行了详细注释。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 动态规划算法的基本步骤及最长递增子序列问题详解
    本文详细介绍了动态规划算法的基本步骤,包括划分阶段、选择状态、决策和状态转移方程,并以最长递增子序列问题为例进行了详细解析。动态规划算法的有效性依赖于问题本身所具有的最优子结构性质和子问题重叠性质。通过将子问题的解保存在一个表中,在以后尽可能多地利用这些子问题的解,从而提高算法的效率。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • 前景:当UI一个查询条件为多项选择,或录入多个条件的时候,比如查询所有名称里面包含以下动态条件,需要模糊查询里面每一项时比如是这样一个数组条件:newstring[]{兴业银行, ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • mysql-cluster集群sql节点高可用keepalived的故障处理过程
    本文描述了mysql-cluster集群sql节点高可用keepalived的故障处理过程,包括故障发生时间、故障描述、故障分析等内容。根据keepalived的日志分析,发现bogus VRRP packet received on eth0 !!!等错误信息,进而导致vip地址失效,使得mysql-cluster的api无法访问。针对这个问题,本文提供了相应的解决方案。 ... [详细]
author-avatar
手机用户2502940425
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有