s -v 指定路径/mysql_log/mysql3306_bin.000012 | grep -i drop
找到了,但是信息不是很完整,我们可不可以找到,这条命令的更信息信息呢?例如,drop 前后各10条数据。
指定路径/bin/mysqlbinlog --no-defaults --base64-output=decode-rows -v 指定路径/mysql_log/mysql3306_bin.000012 | grep -i -A 10 -B 10 drop
这正是我们想要的,完美!
4. 其它知识补充
4.1 mysqlbinlog工具
此处主要讲解用于查看binglog日志的部分参数,用于还原binlog的参数在此不细讲。
mysqlbinlog工具参数说明【用于查看的部分】 |
参数 |
说明 |
-base64-output |
inlog输出语句的base64解码 分为三类: 默认是值auto ,仅打印base64编码的需要的信息,如row-based 事件和事件的描述信息。 never 仅适用于不是row-based的事件 decode-rows 配合--verbose选项一起使用解码行事件到带注释的伪SQL语句 |
--verbose |
重新构建伪SQL语句的行信息输出, -v会增加列类型的注释信息。 |
--database=name |
列出数据库的名称(仅限binlog文件存储在本地) |
4.2 grep 命令
grep是一个强大的文本搜索工具命令,用于查找文件中符合指定格式的字符串,支持正则表达式。
grep命令常用参数说明 |
参数 |
说明 |
-A |
除了显示符合条件的那一行之外,并显示该列之后的指定行的内容内容。 |
-B |
除了显示符合条件的那一行之外,并显示该列之前的指定行的内容内容。 |
-c |
计算符合结果的行数。 |
-i |
忽略字符大小写 |
-v |
反向查找 |
-e |
按指定字符串查找 |
-E |
按指定字符串指定的正则查找 |
-n |
在显示符合条件的那一行前,标识出该行的行数标号。 |