Mysql

MySQL“Statement may not be safe to log in statement format”警告

  • August 11, 2017

以下 MySQL 警告的含義是什麼:

Statement may not be safe to log in statement format.

我的檔案中每天都有數以萬計的此類陳述mysqld.err,我不確定我應該從哪裡開始調查。

這意味著您的二進制日誌格式binlog_format是 STATEMENT,這是預設的二進制日誌格式。

STATEMENT-based 格式記錄發出的語句,而ROW-based 格式記錄單個表的更改方式。日誌記錄的問題STATEMENT是某些語句不能保證寫入主伺服器的相同數據最終會出現在從伺服器上。

一個例子:

INSERT INTO audit (CURRENT_USER()); 

通過查看格式如何 MIXED處理切換到ROW基於 - 的格式,您可以很好地了解這些非確定性語句的不同類型。ROW-based 格式將更多數據寫入二進制日誌,但更安全。

引用自:https://dba.stackexchange.com/questions/25359