MySQL 8.4 發行說明
SET sql_log_bin = {OFF|ON}
sql_log_bin
變數控制是否為目前的工作階段啟用二進制日誌記錄(假設二進制日誌本身已啟用)。預設值為 ON
。若要為目前的工作階段停用或啟用二進制日誌記錄,請將工作階段 sql_log_bin
變數設定為 OFF
或 ON
。
將此變數設定為 OFF
,以便在對來源進行不想複製到副本的變更時,暫時停用工作階段的二進制日誌記錄。
設定此系統變數的 session 值是受限的操作。session 使用者必須擁有足夠的權限才能設定受限的 session 變數。請參閱第 7.1.9.1 節,「系統變數權限」。
無法在交易或子查詢中設定 sql_log_bin
的 session 值。
將此變數設定為 OFF
會阻止新的 GTID 被指派給二進制日誌中的交易。如果您正在使用 GTID 進行複製,這表示即使稍後再次啟用二進制日誌記錄,從此時寫入日誌的 GTID 也無法計算期間發生的任何交易,因此實際上這些交易會遺失。
mysqldump 會將 SET @@SESSION.sql_log_bin=0
陳述式新增至使用 GTID 的伺服器上的 dump 檔案,這會在重新載入 dump 檔案時停用二進制日誌記錄。該陳述式會防止新的 GTID 被產生並指派給 dump 檔案中的交易,因為它們被執行,因此會使用交易的原始 GTID。