1. 錯誤日誌
錯誤日誌記錄的事件:
a. 伺服器啟動關閉過程中的資訊
b. 伺服器執行過程中的錯誤資訊
c. 事件偵錯程式執行一個事件時間生的資訊
d. 在從伺服器上啟動從伺服器程序時產生的資訊
2. 查詢日誌
查詢日誌記錄查詢語句與啟動時間,建議不是在除錯環境下不要開啟查詢日誌,因為會不斷佔據你的磁碟空間,並會產生大量的IO。
查詢日誌有兩種,分別是慢查詢日誌(Slow Query Log)和通用查詢日誌(General Query Log)。而且mysql的查詢日誌不僅可以記錄到檔案,還能自動儲存到MySql資料庫中的表物件裡。
3. 二進位制日誌
binlog日誌用於記錄所有更新且提交了資料或者已經潛在更新提交了資料(例如,沒有匹配任何行的一個DELETE)的所有語句。語句以“事件”的形式儲存,它描述資料更改。
binlog作用
a. 恢復使能夠最大可能地更新資料庫,因為二進位制日誌包含備份後進行的所有更新。
b. 在主複製伺服器上記錄所有將傳送給從伺服器的語句。
4. 事務日誌
a. undo log
Undo Log的原理很簡單,為了滿足事務的原子性,在操作任何資料之前,首先將資料備份到一個地方(這個儲存資料備份的地方稱為UndoLo)。然後進行資料的修改。如果出現了錯誤或者使用者執行了ROLLBACK語句,
系統可以利用UndoLog中的備份將資料恢復到事務開始之前的狀態。除了可以保證事務的原子性,Undo Log也可以用來輔助完成事務的持久化。
b. redo log
記錄的是新資料的備份。在事務提交前,只要將Redo Log持久化即可,不需要將資料持久化。當系統崩潰時,雖然資料沒有持久化,但是RedoLog已經持久化。系統可以根據RedoLog的內容,將所有資料恢復到最新的狀態。
5. 中繼日誌
參見:https://blog.csdn.net/mydriverc2/article/details/50629599
https://www.cnblogs.com/andy6/p/6921515.html
http://blog.51cto.com/pangge/1319304