1. 程式人生 > >mysql中now和sysdate的區別

mysql中now和sysdate的區別

mysql now和sysdate

mysql 中now獲取的是sql執行的時間,sysdate獲取的是系統時間

在master 和slave 主從過程中會導致時間的不一致導致報錯

例如:

Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it uses a system function that may return a different value on the slave.


解決辦法:

1、修復這種問題。

2、不使用statement的語句級別復制,而是類似於oracle的,將數據變更記錄下來,原樣在備庫執行一遍。

第二種方式就是大家熟知的,binlog_format=ROW的方式。第一種就是now()不使用機器系統時間,而是取mysql的變量”TIMESTAMP”值。

另外的類似的變量還包括insert_id(用於復制時,AUTO_INCREMENT的取值)等


mysql中now和sysdate的區別