1

2 つのサーバー間のレプリケーションの mysql 5.5 の処理を​​説明できる人はいますか。

これは私のテーブルの 1 つの構造です。

id int(10) unsigned NOT NULL PRIMARY KEY DEFAULT 'NULL' AUTO_INCREMENT
kot_no varchar(45) NOT NULL DEFAULT 'NULL'
emp_id int(10) unsigned NOT NULL FOREIGN KEY DEFAULT '0'
description varchar(45) NULL DEFAULT 'NULL'
created_date timestamp NOT NULL DEFAULT '0000-00-00 00:00:00'
created_by int(10) unsigned NOT NULL DEFAULT '0'
modified_date timestamp NOT NULL DEFAULT 'CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP'
modified_by int(10) unsigned NULL DEFAULT '0'
state tinyint(1) unsigned NOT NULL DEFAULT '1'

私のデータベースでは、すべてのテーブルに最後の 5 つの列があり、binlog 形式はSTATEMENT BASED REPLICATION

INSERT INTO kot (kot_no, emp_id, created_date) VALUES (1, 1, NOW())サーバー A で実行している場合、これらは 2 つのサーバーでの結果です。

サーバーA上

id  kot_no  emp_id  description  created_date         created_by  modified_date        modified_by  state
1   1       1       null         2015-11-01 22:51:57  0           2015-11-01 22:51:57  0            1

サーバー B で

id  kot_no  emp_id  description  created_date         created_by  modified_date        modified_by  state
1   1       1       null         2015-11-02 12:21:57  0           2015-11-02 12:21:57  0            1

私は単純に、日付は常にデータベースに UTC で格納され、localtime の唯一の効果は表示目的であると想定していましたか? ここで何が起こっているのかを明らかにし、サーバーデータに影響を与えずに解決策を教えてもらえますか?

4

1 に答える 1