2

2つのデータベースサーバーでマスタースレーブレプリケーションを正常にセットアップしました。私はまた、スレーブ上で複製するようにマスタを設定しており、マスタがダウンすると、複製をマスターするスレーブも機能します。しかし、私はこれを行うための時間間隔を設定することができません。私はmaster_delayとmaster_heartbeat_periodを使ってみました。これらのどれも動作していないようです。マスター・スレーブ・サーキュラー・データベース複製の時間間隔はどのように設定しますか?

mysql> change master to master_host='192.168.0.2', 
-> master_user='master', 
-> master_password='masterpass', 
-> master_log_file='mysql-bin.000008', 
-> master_log_pos=3733 
-> master_delay=30; //to set the time limit for the interval 

mysql> change master to master_host='192.168.0.2', 
-> master_user='master', 
-> master_password='masterpass', 
-> master_log_file='mysql-bin.000008', 
-> master_log_pos=3733 
-> master_heartbeat_period=30; //to set the time limit for the interval 

複製は即座に発生します。私は間違って何をしているのでしょうか?

答えて

5

さまざまなMySQLコマンドとその使い方を混同していると思います。

MASTER_HEARTBEAT_PERIOD 

...は、マスターによって送信されるレプリケーションハートビートの間隔を設定するために使用されます。バイナリログに未設定のイベントがない場合は、接続を確実にするためにハートビートが送信されます。彼らは複製の遅れとは関係がありません。

また、MASTER_HEARTBEAT_PERIODはで、MySQL Cluster NDB> 6.3でのみ利用可能です。

も参照してください:http://dev.mysql.com/doc/refman/5.1/en/change-master-to.html

MASTER_DELAY=N 

は、あなたが探している選択肢である可能性があります。 msgstr "マスターから受け取ったイベントは、少なくともN秒後にマスターで実行されるまで実行されません。"

ただし、このオプションは、MySQL 5.6以降ののみ利用可能です。!それはかなり新しいリリースです...多分あなたはこのバージョンを使用しないでください?

も参照してください。http://dev.mysql.com/doc/refman/5.6/en/replication-delayed.html

関連する問題