ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

如何查看mysql binlog日志

2022-06-08 09:31:24  阅读:184  来源: 互联网

标签:binlog 文件 二进制 mysql 日志 mysqlbinlog


 转载自:https://www.modb.pro/db/244063

 

 

 业内目前推荐使用的是row模式,准确性高,虽然说文件大,但是现在有SSD和万兆光纤网络,这些磁盘IO和网络IO都是可以接受的。

 

MySQL的二进制日志可以说是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日志是事务安全型的。一般来说开启二进制日志大概会有1%的性能损耗(参见MySQL官方中文手册 5.1.24版)。二进制有两个最重要的使用场景:
    其一:MySQL Replication在Master端开启binlog,Mster把它的二进制日志传递给slaves来达到master-slave数据一致的目的。
    其二:自然就是数据恢复了,通过使用mysqlbinlog工具来使恢复数据。
    
二进制日志包括两类文件:二进制日志索引文件(文件名后缀为.index)用于记录所有的二进制文件,二进制日志文件(文件名后缀为.00000*)记录数据库所有的DDL和DML(除了数据查询语句)语句事件。

 

一、开启binlog

  在[mysqld] 区块设置/添加 log-bin=mysql-bin 确认是打开状态(值 mysql-bin 是日志的基本名或前缀名);

二、通过mysql的变量配置表,查看二进制日志是否已开启

  show variables like 'log_%';

 

 三、binlog日志内容查看

1、mysql查看binlog

show binary logs;  #获取binlog文件列表
show master status;#查看当前正在写入的binlog文件
show binlog events;   #只查看第一个binlog文件的内容
show binlog events in 'mysql-bin.000002'; #查看指定binlog文件的内容

2、使用mysqlbinlog工具

  mysqlbinlog是一个查看mysql二进制日志的工具,可以把mysql上面的所有操作记录从日志里导出,这个工具默认的安装路径为:/usr/local/mysql/bin/mysqlbinlog 可以通过find / -name "mysqlbinlog"命令查找mysqlbinlog的工具路径。

/usr/local/mysql/bin/mysqlbinlog --start-datetime="2013-03-01 00:00:00" --stop-datetime="2014-03-21 23:59:59" /usr/local/mysql/var/mysql-bin.000007 -r test2.sql

  binlog本身是一类二进制文件。二进制文件更省空间,写入速度更快,是无法直接打开来查看的。因此mysql提供了命令mysqlbinlog进行查看。一般的statement格式的二进制文件,用下面命令就可以

mysqlbinlog mysql-bin.000001

  如果是row格式,加上-v或者-vv参数就行,如

mysqlbinlog -vv mysql-bin.000001

标签:binlog,文件,二进制,mysql,日志,mysqlbinlog
来源: https://www.cnblogs.com/xy-ouyang/p/16354368.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有