• 追加された行はこの色です。
  • 削除された行はこの色です。
**目次 [#k75caf7a]
#contents
**設定手順 [#f2335cef]

-レプリケーション用ユーザの作成
 GRANT REPLICATION SLAVE ON *.* TO repl@'%' 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=【パスワード】

**レプリケーション開始手順 [#v8000ecb]
-データの複製~
マスター側のデータをダンプもしくはディレクトリ丸ごとコピーにてスレーブ側へ複製する。~


-mysqlの起動~
起動の際に特に順番はありません。~
起動後、エラーログ(/usr/local/mysql/var/[HOST NAME].err)を参照する。~
以下のメッセージが出ていれば接続成功。~
~
-/usr/local/mysql/var/[HOST NAME].err~
 090613 14:14:50 [Note] Slave I/O thread: connected to master 'repl@[HOST NAME]:3306',replication started in log '[HOST NAME]-bin.000002' at position 194
~
先に起動したサーバでは以下のエラーが発生する。~
(接続先がまだ起動していないため)~
~
-/usr/local/mysql/var/[HOST NAME].err~
 090613 14:22:47 [ERROR] Slave I/O: error reconnecting to master 'repl@[HOST NAME]:3306' - retry-time: 60  retries: 86400, Error_code: 2013
~
このエラーは時間経過で解消するが、手っ取り早く解消させるにはmysqldを再起動させる。~

-レプリケーションの稼動状態を確認~
MySQLにログインを行い、以下を実行する。

 mysql> SHOW SLAVE STATUS\G
 *************************** 1. row ***************************
       Slave_IO_State: Waiting for master to send event
          Master_Host: localhost
          Master_User: root
          Master_Port: 3306
        Connect_Retry: 3
      Master_Log_File: gbichot-bin.005
  Read_Master_Log_Pos: 79
       Relay_Log_File: gbichot-relay-bin.005
        Relay_Log_Pos: 548
 Relay_Master_Log_File: gbichot-bin.005
     Slave_IO_Running: Yes
    Slave_SQL_Running: Yes
      Replicate_Do_DB:
  Replicate_Ignore_DB:
           Last_Errno: 0
           Last_Error:
         Skip_Counter: 0
  Exec_Master_Log_Pos: 79
      Relay_Log_Space: 552
      Until_Condition: None
       Until_Log_File:
        Until_Log_Pos: 0
   Master_SSL_Allowed: No
   Master_SSL_CA_File:
   Master_SSL_CA_Path:
      Master_SSL_Cert:
    Master_SSL_Cipher:
       Master_SSL_Key:
 Seconds_Behind_Master: 8

~
~
~
~
-----
以下の操作は不具合が出るので保留します~
-----
-レプリケーションの稼動~
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;







**参考資料 [#kfacaa26]
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
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~



トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS