MySQL レプリケーション設定(マルチマスタ) のバックアップ(No.4)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- ソース を表示
- MySQL レプリケーション設定(マルチマスタ) へ行く。
目次 †
設定手順 †
- レプリケーション用ユーザの作成
GRANT REPLICATION SLAVE ON *.* TO 【アカウント】@localhost IDENTIFIED BY '【パスワード】';
- my.cnf (DB 1台目)
[mysqld] log-bin server-id=1 binlog-ignore-db=mysql auto_increment_increment=2 auto_increment_offset=1 sync_binlog=1 master-host=【レプリケーション先(DB 2台目)】 master-user=【アカウント】 master-password=【パスワード】
- my.cnf (DB 2台目)
[mysqld] log-bin server-id=2 binlog-ignore-db=mysql auto_increment_increment=2 auto_increment_offset=2 sync_binlog=1 master-host=【レプリケーション先(DB 1台目)】 master-user=【アカウント】 master-password=【パスワード】
レプリケーション開始手順 †
- データの複製
マスター側のデータをダンプもしくはディレクトリ丸ごとコピーにてスレーブ側へ複製する。
- レプリケーションの稼動
MySQLを起動し、log-binのファイル名を確認する
1台目
mysql1> show master status; +------------------+----------+ | File | Position | +------------------+----------+ | mysql-bin.000014 | 941 | +------------------+----------+ 1 row in set (0.00 sec)
2台目
mysql2> show master status; +------------------+----------+ | File | Position | +------------------+----------+ | mysql-bin.000022 | 1164 | +------------------+----------+ 1 row in set (0.00 sec)
- レプリケーションの開始(Slaveの開始)
1台目
mysql1> CHANGE MASTER TO MASTER_HOST='【DB 2台目】', MASTER_USER='【アカウント】', MASTER_PASSWORD='【パスワード】', MASTER_LOG_FILE='mysql2-bin.000014'; mysql1> start slave;
2台目
mysql2> CHANGE MASTER TO MASTER_HOST='【DB 1台目】', MASTER_USER='【アカウント】', MASTER_PASSWORD='【パスワード】', MASTER_LOG_FILE='mysql1-bin.000012'; mysql2> start slave;
参考資料 †
http://dev.mysql.com/doc/refman/5.1/ja/replication.html http://www.irori.org/doc/mysql-rep.html http://d.hatena.ne.jp/end0tknr/20090202/1233557966 http://www.open-source-network.info/archives/3 http://www.usamimi.info/~sakura/cgi-bin/blog/article.php?id=96