![ファイルの送信中にETAアラート機能をもたらすWhatsApp](/f/111cf84c193cfb3c08c74e58267fabc6.jpg?width=100&height=100)
次のチュートリアルは、セットアップのための簡単なステップバイステップガイドを提供することを目的としています MySQL (マスタースレーブ) レプリケーション NS RHEL 6.3 / 6.2 / 6.1 / 6 / 5.8, CentOS 6.3 / 6.2 / 6.1 / 6 / 5.8 と Fedora 17,16,15,14,13,12 最新の使用 MySQL バージョン。 このガイドは特別に書かれています CentOS 6.3 オペレーティングシステムだけでなく、古いバージョンの Linux との分布 MySQL 5.x.
アップデート: CentOS / RHEL7およびDebian8でのMariaDBマスタースレーブレプリケーションと、Ubuntuなどの派生物をお探しの場合は、このガイドに従ってください。 MariaDBマスタースレーブレプリケーションのセットアップ.
NS MySQLレプリケーション の点で非常に便利です データセキュリティ, フェイルオーバーソリューション, スレーブからのデータベースバックアップ, アナリティクス NS。 レプリケーションプロセスを実行するために、次のものを使用します。 あなたのシナリオでは、それは異なります。
2つのサーバーがあります。1つは 主人 と IP (192.168.1.1)およびその他は 奴隷 なので (192.168.1.2). セットアッププロセスを2つのフェーズに分けて、作業を簡単にします。 フェーズI 構成します 主人 サーバーと フェーズII と 奴隷 サーバ。 レプリケーションのセットアッププロセスを開始しましょう。
の フェーズI、のインストールが表示されます MySQL、設定 レプリケーション 次に、レプリケーションを検証します。
まず、次に進みます MySQL を使用したインストール YUMコマンド. MySQLがすでにインストールされている場合は、この手順をスキップできます。
#yum install mysql-server mysql
開ける my.cnf 構成ファイル VI 編集者。
#vi /etc/my.cnf
以下のエントリを下に追加します [mysqld] セクションと交換することを忘れないでください テクミント 複製したいデータベース名 奴隷.
server-id = 1。 binlog-do-db =テクミント リレーログ= / var / lib / mysql / mysql-relay-bin。 リレーログインデックス= / var / lib / mysql / mysql-relay-bin.index。 log-error = / var / lib / mysql / mysql.err。 master-info-file = / var / lib / mysql / mysql-master.info。 リレーログ情報ファイル= / var / lib / mysql / mysql-relay-log.info。 log-bin = / var / lib / mysql / mysql-bin
再起動します MySQL サービス。
#/ etc / init.d / mysqld restart
ログインする MySQL なので 根 ユーザーを作成し、 スレーブユーザー レプリケーションの権限を付与します。 交換 slave_user ユーザーと あなたのパスワード パスワード付き。
#mysql -u root -p
mysql> GRANT REPLICATION SLAVE ON *。* TO 'slave_user'@'% 'IDENTIFIED BY'あなたのパスワード'; mysql> FLUSH PRIVILEGES; mysql>読み取りロック付きのフラッシュテーブル。 mysql> SHOW MASTER STATUS; +++++ | ファイル| 位置| Binlog_Do_DB | Binlog_Ignore_DB | +++++ |mysql-bin.000003 | 11128001| テクミント| | +++++ セット内の1行(0.00秒)mysql> quit;
ファイルを書き留めてください(mysql-bin.000003)と位置(11128001)番号、後でこれらの番号が必要になりました 奴隷 サーバ。 次に適用する READ LOCK データベースにすべてのデータベースとマスターデータベース情報をエクスポートします mysqldump 指図。
#mysqldump -u root -p --all-databases --master-data> /root/dbdump.db
すべてのデータベースをダンプしたら、rootユーザーおよびunlcokテーブルとしてmysqlに再度接続します。
mysql> UNLOCK TABLES; mysql> quit;
データベースダンプファイルをにアップロードします 奴隷 サーバー(192.168.1.2)SCPコマンドを使用します。
scp /root/dbdump.db [メール保護]:/根/
これで正常に構成できました 主人 サーバー、次に進みましょう フェーズII セクション。
の フェーズII、のインストールを行います MySQL、設定 レプリケーション 次に、レプリケーションを検証します。
お持ちでない場合 MySQL インストールしてから、YUMコマンドを使用してインストールします。
#yum install mysql-server mysql
開ける my.cnf 構成ファイル VI 編集者。
#vi /etc/my.cnf
以下のエントリを下に追加します [mysqld] セクションと交換することを忘れないでください IP の住所 主人 サーバ、 テクミント 複製したいデータベース名など 主人.
server-id = 2。 マスターホスト=192.168.1.1 master-connect-retry = 60。 master-user =slave_user マスターパスワード=あなたのパスワード レプリケート-do-db =テクミント リレーログ= / var / lib / mysql / mysql-relay-bin。 リレーログインデックス= / var / lib / mysql / mysql-relay-bin.index。 log-error = / var / lib / mysql / mysql.err。 master-info-file = / var / lib / mysql / mysql-master.info。 リレーログ情報ファイル= / var / lib / mysql / mysql-relay-log.info。 log-bin = / var / lib / mysql / mysql-bin
ここで、前のコマンドでエクスポートしたダンプファイルをインポートし、MySQLサービスを再起動します。
#mysql -u root -p root /dbdump.db。 #/ etc / init.d / mysqld再起動。
ログインする MySQL rootユーザーとして停止します 奴隷. 次に、 奴隷 どこを探すか マスターログファイル、マスターに書き留めたもの マスターステータスを表示; ファイルとしてのコマンド(mysql-bin.000003)と位置(11128001)数字。 変更する必要があります 192.168.1.1 に IP の住所 マスターサーバー、およびを変更します ユーザー と パスワード によると。
#mysql -u root -p
mysql>スレーブ停止; mysql> CHANGE MASTER TO MASTER_HOST = '192.168.1.1'、MASTER_USER ='slave_user'、MASTER_PASSWORD ='あなたのパスワード'、MASTER_LOG_FILE ='mysql-bin.000003'、MASTER_LOG_POS =11128001; mysql>スレーブ開始; mysql> show slave status \ G
*************************** 1. 行*************************** Slave_IO_State:マスターがイベントMaster_Hostを送信するのを待っています: 192.168.1.1 Master_User:slave_user Master_Port:3306 Connect_Retry:60 Master_Log_File:mysql-bin.000003 Read_Master_Log_Pos:12345100 Relay_Log_File: mysql-relay-bin.000002 Relay_Log_Pos:11381900 Relay_Master_Log_File:mysql-bin.000003 Slave_IO_Running:はいSlave_SQL_Running:はい Replicate_Do_DB: テクミント Replicate_Ignore_DB:Replicate_Do_Table:Replicate_Ignore_Table:Replicate_Wild_Do_Table:Replicate_Wild_Ignore_Table:Last_Errno:0 Last_Error:Skip_Counter:0 Exec_Master_Log_Pos:12345100 Relay_Log_Space:11382055 until_Condition:なしUntil_Log_File:Until_Log_Pos: 0 Master_SSL_Allowed:いいえMaster_SSL_CA_File:Master_SSL_CA_Path:Master_SSL_Cert:Master_SSL_Cipher:Master_SSL_Key: Seconds_Behind_Master:0。 Master_SSL_Verify_Server_Cert:いいえLast_IO_Errno:0 Last_IO_Error:Last_SQL_Errno:0 Last_SQL_Error:セット内の1行(0.00秒)
レプリケーションが完全に機能していることを知ることは非常に重要です。 オン 主人 サーバーはテーブルを作成し、それにいくつかの値を挿入します。
mysql>データベースtecmintを作成します。 mysql> use tecmint; mysql> CREATE TABLE従業員(c int); mysql> INSERT INTO employee(c)VALUES(1); mysql> SELECT * FROM従業員;
++ | c | ++ | 1 | ++ セットの1行(0.00秒)
の確認 スレーブ、同じコマンドを実行すると、スレーブでも同じ値が返されます。
mysql> use tecmint; mysql> SELECT * FROM従業員;
++ | c | ++ | 1 | ++ セットの1行(0.00秒)
これで、最終的に構成が完了しました MySQLレプリケーション いくつかの簡単な手順で。 詳細については、次のURLをご覧ください。 MySQLレプリケーションガイド.