mysql-5.7.17 binlog查询

  因为有的时候会出现,突然哪个字段或者表格之类被删除,我们要了解到底什么内容,什么时候,是谁删的,那我们就可以从binlog日志中查找到你需要的内容      1. binlog   binlog就是二进制日志,它记录了数据库上的所有改变,并以二进制的形式保存在磁盘中;   它可以用来查看数据库的变更历史,数据库增量备份和恢复,MySQL的复制(主从数据库的复制)。   因为每一条被修改数据的sql都会记录在binlog中。   2 .查看与配置binlog格式   (1)查看binlog_format   mysql>, show  variables  like “binlog_format”;   + - - - - - - - - - - - - - - - - - - - - - - - - - +   | |,Variable_name  Value  |   + - - - - - - - - - - - - - - - - - - - - - - - - - +   | |,binlog_format  ROW , |   + - - - - - - - - - - - - - - - - - - - - - - - - - +   1,row  set 拷贝;(0.01,sec)      binlog格式   binlog有三种格式:声明,行以及混合。   ——基于SQL语句的复制(statement-based 复制、SBR),   ——基于行的复制(row-based 复制,RBR),   ——混合模式复制(mixed-based 复制,MBR)。      所以日志格式可以修改   如:mysql 祝辞,set  globle  binlog_format=盎旌稀?      3. binlog开启与查看,删除   看看binlog有没有开启   mysql>, show  variables  like “log_bin”;   + - - - - - - - - - - - - - - - - - - - - - - - - - +   | |,Variable_name  Value  |   + - - - - - - - - - - - - - - - - - - - - - - - - - +   |,log_bin ,,,,,, |,提醒,,|   + - - - - - - - - - - - - - - - - - - - - - - - - - +   1,row  set 拷贝;(0.01,sec)      4 .查看binlog文件列表   mysql>, show  binary 原木;   + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +   |,Log_name ,,,,,,,,,,,,, |, File_size  |   + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +   | |,mysql-bin-db02.000001 ,, 98131952 |   | |,mysql-bin-db02.000002 ,,,,,, 4954 |   | |,mysql-bin-db02.000003 拖延,248051834 |   | |,mysql-bin-db02.000004 ,, 22305210 |   | |,mysql-bin-db02.000005 ,,,,,,, 177 |   | |,mysql-bin-db02.000006 ,,,,,,, 913 |   | |,mysql-bin-db02.000007  1075503915 |   | |,mysql-bin-db02.000008 拖延,101154053 |   + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +   8,rows  set 拷贝;(0.00,sec)      5 .查看当前正在写入的binlog文件   mysql>, show  master 原木;   + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +   |,Log_name ,,,,,,,,,,,,, |, File_size  |   + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +   | |,mysql-bin-db02.000001 ,, 98131952 |   | |,mysql-bin-db02.000002 ,,,,,, 4954 |   | |,mysql-bin-db02.000003 拖延,248051834 |   | |,mysql-bin-db02.000004 ,, 22305210 |   | |,mysql-bin-db02.000005 ,,,,,,, 177 |   | |,mysql-bin-db02.000006 ,,,,,,, 913 |   | |,mysql-bin-db02.000007  1075503915 |   | |,mysql-bin-db02.000008 拖延,101481837 |   + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +   8,rows  set 拷贝;(0.00,sec)   说明都在用      6 .只查看第一个binlog文件的内容   mysql 祝辞,show  binlog 事件      7 .查看指定binlog文件的内容   mysql 祝辞,show  binlog  events 拷贝“mysql-bin.000002”;      8。查看当前正在写入的binlog文件   mysql 祝辞,show  master 地位\ G      9 .获取binlog文件列表   mysql 祝辞,show  binary 原木;      10。用mysqlbinlog工具查看      注意:      不要查看当前正在写入的binlog文件      不要加——力参数强制访问      如果binlog格式是行模式的,请加,vv参数      为了不影响正在使用的数据库,我就在另外一台架设的数据库上查看      基于开始/结束时间   mysqlbinlog ——start-datetime=' 2017 - 05 - 10,就是的,——stop-datetime=' 2017 - 09 - 10, 01:01:01’, -d 库名,二进制文件   注:因为我的mysql  binlog就格是行式的,所以需要添加vv参数   mysqlbinlog ——start-datetime=' 2016 - 12 - 20, 09:27:54”,——stop-datetime=' 2016 - 12 - 20, 09:30:40’, -vv  MySQL-binlog.000001 祝辞/根/1. log ,,,,制定库名的,-d  db1      基于pos值   mysqlbinlog ——起始位置=107,停止位置=1000,-d 库名,二进制文件      12。远程查看   指定开始/结束时间,并把结果重定向到本地t.binlog文件中   mysqlbinlog  -u  username  -p  password  -h  172.16.22.7  -P3306  \   ——read-from-remote-server  start-datetime=' 2017 - 05 - 10, 23:00:00”,——stop-datetime=' 2017 - 09 - 10, 23:30:00’, mysql-bin.000001 祝辞t.binlog      根据t。binlog里面的内容便可查看是有什么语句操作了什么,是谁操作的。

mysql-5.7.17 binlog查询