この記事では、mysql に関する関連知識を提供します。主に、マスター/スレーブ レプリケーション アーキテクチャを迅速に構築する方法に関する関連問題を紹介します。MySQL データベースが提供するマスター/スレーブ レプリケーション機能は、簡単に構築できます。データを複数のサーバーに自動バックアップすることでデータベースを拡張し、データのセキュリティを大幅に強化することを実現しましたので、皆様のお役に立てれば幸いです。
推奨学習: mysql チュートリアル
マスター/スレーブ レプリケーションは、読み取り/書き込み分離の前提条件です。 MySQLデータベースが提供するマスタスレーブレプリケーション機能は、複数サーバ上のデータの自動バックアップを容易に実現し、データベースの拡張を実現し、データのセキュリティを大幅に強化します。同時に、マスター/スレーブ レプリケーションを実装した後、読み取りと書き込みの分離を実装することで、データベースの負荷パフォーマンスをさらに向上させることができます。
図に示すのは、マスター/スレーブ レプリケーションの一般的な実装プロセスです。
読み取りと書き込みの分離はマスター/スレーブ レプリケーションに基づいており、データベースのマスター/スレーブ レプリケーションのみが行われます。読み書きの分離をさらに実現するために。読み取りと書き込みの分離は、すべてのクエリ操作がサブデータベースで実行され、すべての書き込み操作がメイン データベースで実行されると理解できます。データがメイン データベースに書き込まれた後、データはマスター/スレーブ レプリケーションを通じてサブデータベースにバックアップされ、データの整合性が確保されます。
まずマスター/スレーブ レプリケーションの原理を理解しましょう:
マスターノードを実行するためのユーザー名とパスワード
vim /etc/my.cnf元のファイルには次の内容が含まれていないため、自分で追加する必要があります。私の側では、myslave データベース内のデータのマスター/スレーブ レプリケーションを実行します。
server-id = 1 #server-id 服务器唯一标识log_bin = master-bin #log_bin 启动MySQL二进制日志log_bin_index = master-bin.index binlog_do_db = myslave #binlog_do_db 指定记录二进制日志的数据库 这两个指定可以不添加binlog_ignore_db = mysql #binlog_ignore_db 指定不记录二进制日志的数据库次のコマンドを使用して、mysql を再起動します。 Linux のバージョンが異なれば、コマンドも異なる場合があります。
service mysql restart正常に起動した後、次のステートメントを通じて bin-log のオープン ステータスを確認できます: (Navicat で直接クエリするだけです)
show variables like 'log_bin%';2.2リモート アクセス
#允许远程用户访问 GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.221.131' IDENTIFIED BY '123456' WITH GRANT OPTION; #刷新 FLUSH PRIVILEGES;
show master status;
vim /etc/my.cnf関連情報の追加:
server-id = 2 #唯一标识relay-log = slave-relay-bin relay-log-index = slave-relay-bin.index replicate-do-db=myslave #备份数据库 对应master中设置的,可以不设置replicate-ignore-db=mysql #忽略数据库必ず再起動してください。 service;
service mysql restart
change master to master_host='192.168.221.128',master_user='root',master_password='123456',master_log_file='binlog.000009',master_log_pos=2339;master_log_file は最初のステップで取得したファイル名です; master_log_pos は最初のステップで取得した同期位置です;
start slave;
show slave status\G
推奨学習: mysql 学習チュートリアル
###以上がMySQL の詳細な分析によるマスター/スレーブ レプリケーション アーキテクチャの迅速な構築の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。