binlog用于記錄數據庫執行的寫入性操作,由服務層進行記錄,通過追加的方式以二進制的形式保存在磁盤中。
binlog主要用于主從復制和數據恢復。
主從復制:在主機端開啟binlog,然后將binlog發送到各個從機,從機存放binlog文件來做到主從數據一致。
數據恢復:通過mysqlbinlog工具來恢復數據。
binlog也是分為內存緩存binlog和磁盤binlog,對于Innodb來說,只有再提交事務時,才會記錄binlog內存緩存,并且mysql默認每次提交事務時,將binlog內存緩存同步到磁盤中。