ホームページ  >  記事  >  データベース  >  実践的なmysqlクラスタ構築(2) ~mysqlデータベースのマスター・スレーブレプリケーションの実装~

実践的なmysqlクラスタ構築(2) ~mysqlデータベースのマスター・スレーブレプリケーションの実装~

黄舟
黄舟オリジナル
2017-02-28 13:29:411641ブラウズ

前回の記事「実践的なmysqlクラスタ構築(1) - centos7でのmysql-5.6のバイナリインストール」に続き、本記事ではメインデータベースサーバがログファイル形式でデータを別サーバにバックアップする方法を紹介します。データベースのマスター/スレーブ レプリケーションにより、安全なデータ バックアップが可能になります。 Master:MySQLのログインを再起動しますマスターサーバーアカウントに作成し、スレーブ機能を許可します

 # vi /etc/my.cnf 
添加如下内容:        
 log_bin=mysql-bin        
server_id =1


もちろん、この操作の前にマスターデータベースとスレーブデータベースの両方にデータが存在する場合は、データベース全体をバックアップできます。バックアッププロセスは次のとおりです。

1、

/usr/bin

ln-s/application/mysql/bin/mysqldump/usr/bin/

へのmysqldumpコマンド2. mysqldump コマンドを使用してマスターサーバーデータベースをバックアップします。

# mysqldump -uroot -p -A --master-data=1 > /tmp/master_16-09-12.sql

3. バックアップが完了し、書き込み操作を再開します:

# mysql> テーブルのロックを解除します

1. スレーブ同期操作を停止します

mysql> 停止スレーブ;

2. スレーブ ライブラリの設定ファイルを変更します

# /etc/init.d/mysqld restart

3. master_16-09-12.sql ファイルをスレーブ ライブラリにインポートします


  #mysql –uroot –p
       mysql> grant replication slave on *.* to 'mysql'@'%' identified by 'mysql';
       mysql> flush priviliges;
       mysql> flush tables with read lock;

4.スレーブサーバーのスレーブ

# vi /etc/my.cnf       
log_bin=mysql-bin       
server_id = 2

5. スレーブサーバーのスレーブを起動します

# mysql -uroot -p < master_16-09-12.sql
6. スレーブサーバーのステータスを確認します

mysql> change master to        
master_host="主服务器IP",       
master_user="mysql",       
master_password="mysql";

以下の内容が表示されれば、設定は成功です。


この操作は仮想マシンのクローン作成によって実装され、エラー:

マスターとスレーブの MySQL サーバー UUID が等しい 解決策


これこれは、サーバーのコピープロセス中にデータベースのデータディレクトリ全体もコピーされるためです。このようにして、その中にauto.cnfファイルが存在します。このファイルには、各データベースのuuidが異なる必要があります。 uuidを変更します。


上記は実際の mysql クラスター構築 (2) - mysql データベースのマスター/スレーブ レプリケーションを実現する内容です。その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) を参照してください。 )!

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。