1. 程式人生 > >【MySQL】mysqlbinlog相關簡介

【MySQL】mysqlbinlog相關簡介

部分 lob row lan efault 歸檔 pyo root home

binlog簡介:
二進制日誌,記錄對數據發生或潛在發生更改的SQL語句,並以二進制的形式保存在磁盤中。
作用:
MySQL的作用類似於Oracle的歸檔日誌,可以用來查看數據庫的變更歷史(具體的時間點所有的SQL操作)、數據庫增量備份和恢復(增量備份和基於時間點的恢復)、Mysql的復制。
開啟:
show variables like ‘%log_bin%‘; 可查看是否開啟
方法一、修改my.cnf參數文件,該方法需要重啟
log-bin=mysql-bin #打開日誌(主機需要打開),這個mysql-bin也可以自定義,這裏也可以加上路徑,如:/home/www/mysql_bin_log/mysql-bin
關閉二進制日誌的方法:log-bin = mysql-bin註釋掉即可
方法二、不重啟修改二進制日誌配置,該方法mysql的版本需要5.6以上
SET @@global.log_bin=1|0??(1為開啟,0為關閉)
查看:

# 可查看參數幫助
mysqlbinlog??--no-defaults --help 
# 查看最後100行
mysqlbinlog??--no-defaults --base64-output=decode-rows -vv mysql-bin.000001 |tail -100 
# 根據position查找
mysqlbinlog??--no-defaults --base64-output=decode-rows -vv mysql-bin.000001 |grep -A 20 ‘4939002‘ 
# 根據position恢復部分數據 也可根據時間點恢復
mysqlbinlog??--no-defaults --start-position=204136360 --stop-position=204136499 mysql-bin.000006 | mysql -uroot -pyourpassword test

【MySQL】mysqlbinlog相關簡介