Percona MySQL5.6ハーフ同期レプリケーション
まず普通のcloneを配置します
2台のサーバ、1台のプライマリとスタンバイ
プライマリサーバ:
10.10.1.30
Slave:
10.10.1.200
各機械のmyを修正します.cnfファイル、server_をそれぞれ変更id
プライマリサーバサーバサーバ_id=1,slaveのserver_id=2
2台のサーバを再起動します.
2台のサーバのserver_を表示できます.idは違います.
Masterにログインし、次のように入力します.
マスターのFileフィールドとPostionフィールドを記録し、後で使用します.
Slaveにログインし、入力:
mysql> change master to -> master_host='10.10.1.30', -> master_port=3306, -> master_user='repl', -> master_password='password', -> master_log_file='bin-file.000035',//さっきMasterのFileフィールド->master_log_pos=407;//MasterのPostionフィールド
mysql> start slave;Query OK, 0 rows affected (0.03 sec)
入力:show slave statusGエラーメッセージがなければclone構成は完了します.
半同期レプリケーションを構成します.半同期レプリケーションのプラグインが存在するかどうかを確認します.一般的に5.6バージョンは付属しています.
到:/usr/lib 64/mysql/pluginここに存在するかどうかを確認します.
[root@localhost plugin]# ll -h semisync_*-rwxr-xr-x. 1 root root 40K Sep 15 00:16 semisync_master.so-rwxr-xr-x. 1 root root 14K Sep 15 00:16 semisync_slave.so
次にMasterにログインし、次のように入力します.
再ログインSlave入力:
この2つのファイル.そしてそれぞれマスターのmy.cnfファイルに追加:
rpl_semi_sync_master_enabled=1rpl_semi_sync_master_timeout=3000rpl_semi_sync_master_trace_level=32rpl_semi_sync_master_wait_no_slave=on
binlog_format=ROWbinlog_row_p_w_picpath=minimal
Slaveのmy.cnfファイルの追加:
rpl_semi_sync_slave_enabled=1slave-parallel_workers=4
binlog_format=ROWbinlog_row_p_w_picpath=minimal
最後にslave-parallel_workerパラメータはslaveワークスレッドを増やし、パフォーマンスを向上させることができます.binlog_formatはrowフォーマットを使うともっと安全になります.p_w_picpathがminimalに設定されている場合、binlogは影響を受けるローのみを記録します.2台のサーバをそれぞれ再起動してもかまいません.
次にmasterまたはslaveに入力します.
rplの表示semi_sync_master_enabledまたはrpl_semi_sync_slave_enabledがONしているか
2台のサーバ、1台のプライマリとスタンバイ
プライマリサーバ:
10.10.1.30
Slave:
10.10.1.200
各機械のmyを修正します.cnfファイル、server_をそれぞれ変更id
プライマリサーバサーバサーバ_id=1,slaveのserver_id=2
2台のサーバを再起動します.
show variables like 'server_id';
2台のサーバのserver_を表示できます.idは違います.
Masterにログインし、次のように入力します.
grant replication slave on *.* to 'repl'@'10.10.1.200' identified by 'password';
flush privileges;
show master status;
マスターのFileフィールドとPostionフィールドを記録し、後で使用します.
Slaveにログインし、入力:
mysql> change master to -> master_host='10.10.1.30', -> master_port=3306, -> master_user='repl', -> master_password='password', -> master_log_file='bin-file.000035',//さっきMasterのFileフィールド->master_log_pos=407;//MasterのPostionフィールド
mysql> start slave;Query OK, 0 rows affected (0.03 sec)
入力:show slave statusGエラーメッセージがなければclone構成は完了します.
半同期レプリケーションを構成します.
到:/usr/lib 64/mysql/pluginここに存在するかどうかを確認します.
[root@localhost plugin]# ll -h semisync_*-rwxr-xr-x. 1 root root 40K Sep 15 00:16 semisync_master.so-rwxr-xr-x. 1 root root 14K Sep 15 00:16 semisync_slave.so
次にMasterにログインし、次のように入力します.
install plugin rpl_semi_sync_master soname 'semisync_master.so';
再ログインSlave入力:
install plugin rpl_semi_sync_slave soname 'semisync_slave.so';
この2つのファイル.そしてそれぞれマスターのmy.cnfファイルに追加:
rpl_semi_sync_master_enabled=1rpl_semi_sync_master_timeout=3000rpl_semi_sync_master_trace_level=32rpl_semi_sync_master_wait_no_slave=on
binlog_format=ROWbinlog_row_p_w_picpath=minimal
Slaveのmy.cnfファイルの追加:
rpl_semi_sync_slave_enabled=1slave-parallel_workers=4
binlog_format=ROWbinlog_row_p_w_picpath=minimal
最後にslave-parallel_workerパラメータはslaveワークスレッドを増やし、パフォーマンスを向上させることができます.binlog_formatはrowフォーマットを使うともっと安全になります.p_w_picpathがminimalに設定されている場合、binlogは影響を受けるローのみを記録します.2台のサーバをそれぞれ再起動してもかまいません.
次にmasterまたはslaveに入力します.
show global variables like 'rpl_semi%';
rplの表示semi_sync_master_enabledまたはrpl_semi_sync_slave_enabledがONしているか