前提
檢視日誌的前提自然是要保證資料庫開啟了日誌,開始操作前我們需要檢查 mysql 的 log-bin 引數,on 表示已開啟日誌,off 表示未開啟(如果該引數為 off,那麼可以放棄此次日誌檢視操作了,之前的操作並沒有日誌記錄),操作如下(mysql命令列中執行):
show variables like 'log_bin';
操作mysql 的日誌檢視是通過官方提供的 mysqlbinlog 工具進行的,mysqlbinlog 可以將日誌中的內容列印到控制台,配合作業系統的命令可以將其輸出到指定檔案,此文中以 centos 為例,具體操作分以下幾步:
確定日誌檔案位置
通過 /etc/my.cnf (預設安裝後 mysql 配置檔案位置,如果手動指定可通過 find / -name 'my.cnf'來查詢)中配置的 log-bin 引數來確定二進位制檔案位置,日誌路徑下通常有多個日誌檔案,其中編號最大的一般為最新的檔案,可通過以下命令列檢視當前日誌檔案(mysql命令列中執行):
show master logs;
show master status;
輸出檔案內容
# 直接檢視
mysqlbinlog mysql-bin.*****(日誌檔案號)
# 輸出到指定檔案
mysqlbinlog mysql-bin.***** > mysqllog.log
# 指定時間段輸出
mysqlbinlog --start-datetime '2019-01-08 00:00:00' --stop-datetime '2019-01-08 01:00:00' mysql-bin.***** > mysqllog.log
如果執行過程出現以下提示,可暫時新增 --no-defaults 引數跳過檢查
mysqlbinlog:[error] unknown variable 'default-character-set=utf8'
mysql 二進位制日誌
如果mysql 伺服器啟用了二進位制日誌,你可以使用mysqlbinlog工具來恢復從指定的時間點開始 例如,從你最後一次備份 直到現在或另乙個指定的時間點的資料。mysqlbinlog 用於處理二進位制日誌檔案的實用工具 要想從二進位制日誌恢復資料,你需要知道當前二進位制日誌檔案的路徑和檔名。一般...
mysql 二進位制日誌
1.日誌型別 二進位制日誌記錄了所有對mysql資料庫的修改事件,包括增刪改事件和對錶結構的修改事件。2.配置使用二進位制日誌 在my.ini 配置 log bin mysql bin 3.二進位制日誌格式 基於段的日誌格式 binlog format statement 記錄了操作的sql語句。優...
MySQL日誌 二進位制日誌(1)
一 二進位制日誌的介紹 二進位制日誌的資料當然是二進位制形式了,所以無法直接通過文字工具來檢視,並且二進位制日誌也不是用來檢視的而是通常給mysql使用的。它記錄了對資料發生或潛在發生更改的sql語句。二進位制日誌的用途有如下幾點 可以記錄對資料庫所在的變更,包括ddl和dml語句。用於資料庫的增量...