この記事では、MySQL マスター/スレーブ データベースの構築方法について説明します。ご参考までに、詳細は以下の通りです。 マスタースレーブサーバーは、MySQL のリアルタイムデータ同期とバックアップに非常に適したソリューションです。現在、大規模、中規模、小規模のすべての Web サイトは、MySQL データベースのマスタースレーブサーバー機能を使用して、Web サイトデータベースの非同期バックアップを実行しています。ここで、マスタースレーブサーバーの構成手順を紹介します。 MySQL マスタースレーブ レプリケーションには、少なくとも 2 つの MySQL サービスが必要です。もちろん、MySQL サービスを異なるサーバーに分散することも、1 つのサーバーで複数のサービスを開始することもできます。 (1)まず、マスターサーバーとスレーブサーバーのMySQLバージョンが同じであることを確認する (2)マスターサーバー上でスレーブデータベースアカウントを設定し、次のように mysql> 'slave001'@'192.168.0.99' に *.* のレプリケーションスレーブを許可します。 '123456'; クエリは正常、影響を受けた行は 0 行 (0.13 秒) (3)メインデータベースの設定ファイルmy.cnfを変更し、BINLOGを有効にし、server-idの値を設定します。変更後、MySQLサービスを再起動する必要があります。 [mysqld] ログ bin = /home/mysql/log/mysql-bin.log サーバーID=1 (4) 次に、マスター サーバーの現在のバイナリ ログ名とオフセットを取得します。この操作の目的は、スレーブ データベースの起動後にこの時点からデータを回復することです。 mysql> マスターステータスを表示します。 ************************** 1. 行 **************************** ファイル:mysql-bin.000003 ポジション: 243 バイナリログ_Do_DB: バイナリログを無視: セット内の 1 行 (0.00 秒) (5) これで、マスターデータの更新を停止し、マスターデータベースのバックアップを生成できます。mysqldump を使用して、データをスレーブデータベースにエクスポートできます。もちろん、cp コマンドを使用してデータファイルをスレーブデータベースに直接コピーすることもできます。 データの一貫性を確保するために、データをエクスポートする前にプライマリ データベースを READ LOCK する必要があることに注意してください。 mysql> 読み取りロック付きのテーブルをフラッシュします。 クエリは正常、影響を受けた行は 0 行 (0.19 秒) 次にmysqldump mysqldump -h127.0.0.1 -p3306 -uroot -p テスト > /home/chenyz/test.sql プライマリ データベースをバックアップした後、書き込み操作を復元するのが最適です。 mysql> テーブルのロックを解除します。 クエリは正常、影響を受けた行は 0 行 (0.28 秒) (6)マスターデータのバックアップからtest.sqlファイルをスレーブデータベースにコピーし、インポートします。 (7)次に、スレーブデータベースのmy.cnfファイルを変更し、server-idパラメータを追加し、レプリケーションに使用するユーザー、マスターデータベースサーバーのIPとポート、およびレプリケーションログを実行するファイルと場所を指定します。 [mysqld] サーバーID=2 log_bin = /var/log/mysql/mysql-bin.log マスターホスト =192.168.1.100 マスターユーザー=テスト マスターパス=123456 マスターポート =3306 マスター接続再試行=60 複製-do-db =テスト (8)スレーブサーバー上でスレーブプロセスを起動する mysql> スレーブを起動します。 (9) mysql> スレーブステータスを表示 G ************************** 1. 行 **************************** Slave_IO_State: マスターがイベントを送信するのを待機中 マスターホスト: ローカルホスト マスターユーザー: ルート マスターポート: 3306 接続再試行: 3 マスターログファイル:mysql-bin.003 読み取りマスターログ位置: 79 リレーログファイル: gbichot-relay-bin.003 リレーログ位置: 548 リレーマスターログファイル:mysql-bin.003 スレーブIO実行中: はい スレーブSQL実行中: はい (10)これで、マスターサーバー上でいくつかの更新操作を実行し、スレーブサーバー上で更新が完了したかどうかを確認できます。 MySQL 関連のコンテンツに興味のある読者は、このサイトの次のトピックをチェックしてください: 「MySQL クエリ スキル」、「MySQL トランザクション操作スキル」、「MySQL ストアド プロシージャ スキル」、「MySQL データベース ロック関連スキルの概要」、および「MySQL 共通関数の概要」 この記事が皆様のMySQLデータベース設計に役立つことを願っています。 以下もご興味があるかもしれません:
|
<<: Dockerを使用してLaravelおよびVueプロジェクトの開発環境を構築する詳細な説明
>>: Vue.js ソースコード解析のカスタム手順の詳細な説明
1: スループット(1秒あたりのリクエスト数)サーバーの同時処理能力を定量的に表したもので、reqs...
目次Vueのレスポンシブシステムの基本原則1. Object.definePropertyの使い方を...
序文現在、私は Beetlex のデータ分析プラットフォームに取り組んでいます。この製品の開発では、...
ウェブサイトのアクセス速度を向上させるための徹底的な最適化に関するヒント。ウェブサイトのアクセス速度...
まず、action はフォームの属性です。HTML5 では必須の属性値として定義されています。onS...
目次コンポーネント - タイムラインカスタムノードスタイルカスタムタイムスタンプコンポーネント - ...
この記事では、スキン変更効果を実現するためのJavaScriptの具体的なコードを参考までに紹介しま...
この記事では、ディープラーニングフレームワーク keras を使用して、SQL インジェクションの特...
1.sshコマンドLinux では、ssh コマンドを使用して別のサーバーにログインできます。 2 ...
目次Matlab セントロイドアルゴリズムMatlab はクローズドな商用ソフトウェアであり、米国政...
「downloadlaod」を直接クリックしてもダウンロードできない場合は、ここからダウンロードす...
1. CSS ボックスモデルボックスには、余白、境界線、パディング、コンテンツが含まれます境界線の接...
この記事の例では、クールなフロントエンドページのスライド検証の具体的なコードを参考までに共有していま...
必要ページング バーを追加します。これにより、ページにジャンプしたり、ページ番号に従って特定のページ...
最近、WeChatはAppleによってダークモードの開発を強制されました。ますます多くのウェブサイト...