前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL日志管理工具 mysqlbinlog

MySQL日志管理工具 mysqlbinlog

作者头像
醉生萌死
发布2018-11-05 14:39:13
4.3K0
发布2018-11-05 14:39:13
举报
文章被收录于专栏:醉生梦死

使用mysqlbinlog查看二进制日志文件

# mysqlbinlog --help 帮助文档 常用选项: -d, --database=name 指定数据库名称,只列出指定的数据库相关操作 -o, --offset=number 忽略掉日志中的前number行 -r, --result-file=name 将输出的文本格式日志输出到指定文件 -s, --short-form 显示简单格式,省略掉一些信息 --set-charset=char-name 在输出为文本格式时,在文件第一行加上set names char-name,这个选项在某些情况下装载数据时非常有用 --start-datetime=name --stop-datetime=name 指定日期间隔内的所有日志 --start-position=# --stop-position=# 指定位置间隔内的所有日志

代码语言:javascript
复制
[root@db02 data]# ls mysql_bin.0*
mysql_bin.000001  mysql_bin.000002

使用cat查看都是乱码的,要使用mysqlbinlog 

代码语言:javascript
复制
[root@db02 data]# cat mysql_bin.000001
      
\þbinŔ̚tx5.6.36-logŔ̚8

?n¯±̚ @std!!!testBEGINC)¯±̚.턁teststunد±̚ 2 Fÿþþþǒ꯱̚?Y
                                                  -* ²̚ @std!!!testBEGIN¯ ²̚.µFteststu? ²̚(ہFÿþ䃮 ²̚? p²̚H @std!!!testBEGINH?²̚.rFteststuսݴp²̚(Fÿp²̚¹c0¦ºxp²̚ @std!!!testBEGIN䈍̚./FteststuM¤ް²̚(WFÿþ鈪9p²̚veؚ?ZH @std!!!testBEGINc
,²̚.ꂆteststun0®S²̚(Fÿþ꟎²̚3k{\˗²̚H @std!!!testBEGIN§Z[²̚.©Fteststu²̚(τFÿþp6*²̚?h	

 [root@db02 data]# mysqlbinlog mysql_bin.000001

代码语言:javascript
复制
[root@db02 data]# mysqlbinlog mysql_bin.000001

/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at 4
#180411 12:53:25 server id 1  end_log_pos 120 CRC32 0x6ed142e0 	Start: binlog v 4, server v 5.6.36-log created 180411 12:53:25 at startup
ROLLBACK/*!*/;
....................

-d  只显示对test数据库的操作日志

代码语言:javascript
复制
[root@db02 data]# mysqlbinlog -d test mysql_bin.000001

-o选项 忽略前3个操作

代码语言:javascript
复制
[root@db02 data]# mysqlbinlog mysql_bin.000002 -o 3

截取指定日期之间的日志

显示两个时间点之间的日志2018/04/11 15:00:45 ~ 2018/04/11 15:01:35 

代码语言:javascript
复制
[root@db02 data]# mysqlbinlog mysql_bin.000001 --start-datetime='2018/04/11 15:00:45' --stop-datetime='2018/04/11 15:01:35'

开始日期和结束日期可以只写一个;

如果只写开始日期,表示范围是开始日期到日志结束;

如果只写结束日期,表示范围是日志开始到指定的日期结束

截取指定位置之间的日志

 --start-position=1903 --stop-position=2020

代码语言:javascript
复制
[root@db02 data]# mysqlbinlog mysql_bin.000001 --start-position=1903 --stop-position=2020

注:此博文仅供参考! 参考书籍:《深入浅出MySQL  数据库开发、优化与管理维护》(第二版)

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 截取指定日期之间的日志
  • 截取指定位置之间的日志
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档