Mysql中的sync binlog引數

2021-07-02 23:56:04 字數 722 閱讀 8947

sync_binlog=1 or n

this makes mysql synchronize the binary log』s contents to disk eachtime it commits a transaction 

預設情況下,並不是每次寫入時都將binlog與硬碟同步。因此如果作業系統或機器(不僅僅是mysql伺服器)崩潰,有可能binlog中最後的語句丟失了。要想防止這種情況,你可以使用sync_binlog全域性變數(1是最安全的值,但也是最慢的),使binlog在每n次binlog寫入後與硬碟同步。即使sync_binlog設定為1,出現崩潰時,也有可能表內容和binlog內容之間存在不一致性。如果使用innodb表,mysql伺服器處理commit語句,它將整個事務寫入binlog並將事務提交到innodb中。如果在兩次操作之間出現崩潰,重啟時,事務被innodb回滾,但仍然存在binlog中。可以用--innodb-safe-binlog選項來增加innodb表內容和binlog之間的一致性。(注釋:在mysql5.1中不需要--innodb-safe-binlog;由於引入了xa事務支援,該選項作廢了),該選項可以提供更大程度的安全,使每個事務的binlog(sync_binlog=1)和(預設情況為真)innodb日誌與硬碟同步,該選項的效果是崩潰後重啟時,在滾回事務後,mysql伺服器從binlog剪下回滾的innodb事務。這樣可以確保binlog反饋innodb表的確切資料等,並使從伺服器保持與主伺服器保持同步(不接收回滾的語句)。

mysql中的編碼 mysql中的編碼

一 mysql中的編碼 mysql show variables like collation mysql show variables like character set 預設是latin1編碼,會導致中文亂碼。修改庫的編碼 mysql alter database db name charac...

mysql中 變數 mysql中的變數

toc 變數 mysql本質是一種程式語言,需要很多變數來儲存資料。mysql中很多的屬性控制都是通過mysql中固有的變數來實現的。系統變數 系統內部定義的變數,系統變數針對所有使用者 mysql客戶端 有效。檢視系統所有變數 show variables like pattern mysql允許...

mysql中的函式名 MySQL中的函式

一 數學函式 數學函式主要用於處理數字,包括整型 浮點數等。abs x 返回x的絕對值 select abs 1 返回1 ceil x ceiling x 返回大於或等於x的最小整數 select ceil 1.5 返回2 floor x 返回小於或等於x的最大整數 select floor 1.5...