アットウィキロゴ
 
  • RPMインストール
# rpm -ivh --nopost MySQL-server-advanced-gpl-5.1.30-0.rhel4.x86_64.rpm
# rpm -ivh MySQL-client-advanced-gpl-5.1.30-0.rhel4.x86_64.rpm

  • 1. マスターのデータをダンプする。
# mysqldump -uユーザ名 -pパスワード \
--all-databases --master-data=2 \
--single-transaction --flush-logs > dumpfile.sql

  • 2. マスター上にレプリケーション用のユーザを作成する。
mysql> GRANT REPLICATION SLAVE ON *.* TO 'レプリケーションユーザ名'@'スレーブのホスト名' IDENTIFIED BY 'パスワード';

  • 2. レプリケーション
mysql> GRANT REPLICATION SLAVE ,REPLICATION CLIENT,SELECT,RELOAD,EVENT,SHOW VIEW,LOCK TABLES,TRIGGER ON *.* TO 'repl'@'192.168.11.0/255.255.255.0' IDENTIFIED BY 'password';

  • 3. スレーブサーバを起動する。

# /etc/init.d/mysql start

  • 4. ステップ(1)で取得したデータをスレーブへリストアする。
マスターからスレーブへダンプファイルを転送してからでスレーブ上へデータをリストア。
# mysql -uユーザ名 -pパスワード < dumpfile.sql

  • 5. スレーブ上でレプリケーションの設定を行う。
CHANGE MASTERコマンドを使ってレプリケーションの設定を行います。
ダンプファイルの先頭に、マスター上のバイナリログファイル名と開始位置が
記述されているので、次のコマンドで抜き。

# head -100 dumpfile.sql | grep CHANGE
-- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000002', MASTER_LOG_POS=106;

ここで表示されたCHANGE MSTER TOコマンドに対してマスターのホスト名や利用する
アカウント情報などを追加することにより、CHANGE MASTER TOコマンドを完成させて
実行しましょう。完成形のコマンドは次のようになるでしょう。

mysql> CHANGE MASTER TO
MASTER_HOST='マスターのIP',
MASTER_USER='レプリケーションユーザー名',
MASTER_PASSWORD='パスワード',
MASTER_PORT=3306,
MASTER_LOG_FILE='mysql-bin.001234',
MASTER_LOG_POS=106,
MASTER_CONNECT_RETRY=60;

  • 6. レプリケーションを開始する。
mysql> START SLAVE;
mysql> SHOW SLAVE STATUS\G

タグ:

+ タグ編集
  • タグ:
最終更新:2010年07月22日 18:50