ServersMan@VPSのCentOS5をデータベースサーバーへ_その2
ServersMan@VPSのCentOS5をデータベースサーバーへ_その2
★レプリケーションの設定編★
レプリケーションの設定を試したかったので、
もう1台VPSを借りてみた。それでも月額500円×2は安いでし。
マスターサーバー(182.163.50.81)
スレーブサーバー(182.163.92.153)
とする。
【1】.マスターサーバー、スレーブサーバー両方でのmy.conf設定
マスターサーバーのserver-idを1、スレーブサーバーのmysql-idを2に設定する
[mysqld] server-id = ユニークな任意の数
【2】.マスターサーバーでのバイナリログの設定をONにする
バイナリログを出力する設定が必須となるので有効に。
[mysqld] log_bin
【3】.それぞれのサーバーを再起動
/etc/init.d/mysqld restart
【4】.それぞれの確認作業
mysql -u root -p; show variables like 'server_id'; show variables like 'log_bin'; [マスターサーバー側]--------------------------------------------- mysql> show variables like 'server_id'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | server_id | 1 | +---------------+-------+ 1 row in set (0.00 sec) mysql> show variables like 'log_bin'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | log_bin | ON | +---------------+-------+ 1 row in set (0.00 sec) [スレーブーサーバー側]--------------------------------------------- mysql> show variables like 'server_id'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | server_id | 2 | +---------------+-------+ 1 row in set (0.00 sec)
【5】.マスターサーバーでの作業
スレーブから接続するためのユーザーを作成する
grant replication slave on *.* to 'replication'@'182.163.92.153' identified by 'パスワード';
【6】.バイナリログがどこまで書かれたかを確認
mysql> show master status; +-------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +-------------------+----------+--------------+------------------+ | mysqld-bin.000001 | 246 | | | +-------------------+----------+--------------+------------------+ 1 row in set (0.00 sec) ↑スレーブは、このポジションの位置からレプリケーションを開始させる必要がある!!
【7】.スレーブサーバーでの作業
change master to master_host = '182.163.50.81', master_user = 'replication', master_password = 'パスワード', master_log_file = 'mysqld-bin.000001', master_log_pos = 246;
【8】.スレーブとしての動作を開始させる
start slave;