MySQL マスタースレーブレプリケーション構成プロセス

MySQL マスタースレーブレプリケーション構成プロセス

メインライブラリの構成

1. MySQLを設定する

vim /etc/my.cn
# ファイルに次の内容を追加します server-id=1 # サーバー ID が一意であることを確認します log-bin = /var/lib/mysql/mysql-bin.log
binlog-do-db = db1 
binlog-do-db = db2

このうち、db1 と db2 はマスタースレーブレプリケーションを予定しているライブラリです。複数ある場合は複数行記述するだけです。設定後、データベースを再起動します: service mysqld restart restart

2. レプリケーションユーザーを追加する

phpmyadmin を使用して、新しいユーザーを追加し、REPLICATION SLAVE 権限を付与します。または、root ユーザーとして mysql にログインし、権限を付与します。

'password' で識別される 'repl'@'%' に *.* のレプリケーション スレーブを許可します

ここで、repl はユーザー名、password はそのユーザーのパスワードです。

3. データをダンプする

新しいデータが生成されないことを保証できる場合は、データベースをロックする必要はありません。これを保証できない場合は、ダンプ データごとにデータベースをロックする必要があります。

db1 を使用します。
読み取りロック付きでテーブルをフラッシュします。

次にデータをダンプします。

mysqldump -uroot -p db1 > db1.sql

データベースが複数ある場合は、上記のプロセスを複数回繰り返します。

4. バイナリファイルの場所を確認する

MySQL に root としてログインし、マスターのステータスを確認します。

マスターステータスを表示します。

このコマンドは、次の形式に似た出力を生成します。

+-----------------+-----------+----------------+------------------+
| ファイル | 位置 | Binlog_Do_DB | Binlog_Ignore_DB |
+-----------------+-----------+----------------+------------------+
| mysql-bin.00002 | 445 | db1、db2 | |
+-----------------+-----------+----------------+------------------+
セット内の 1 行 (0.00 秒)

5. ロック解除

エクスポート数が 1 で、データベースが読み取りロックされている場合は、それを解除する必要があります。

db1 を使用します。
テーブルのロックを解除します。

この時点で、メイン データベースの構成は完了です。特に、 show master status出力のファイルと位置の値を覚えておいてください。

ライブラリからの設定

1. 新しいデータベースを作成する

まず、スレーブ ライブラリに同じ名前のデータベースを作成します。

2. スレーブデータベースを構成する

vim /etc/my.cnf
# my.cnf に次の内容を追加します。
server-id = 2 # ID が一意であることを確認してください relay-log = /var/lib/mysql/mysql-relay-bin.log
複製ワイルドドゥテーブル = db1.%
複製ワイルドドゥテーブル = db2.%

複数のデータベースを同期する場合、replicate-wild-do-table は複数行を書き込む必要があります。設定後、データベースを再起動します。

3. データのインポート

マスター サーバーからダンプされたデータをスレーブ サーバーにインポートします。

mysql -uroot -p db1 < db1.sql

4. マスタースレーブ同期を構成する

MySQL サーバーにログインし、同期されたマスター サーバー情報を設定します。

> マスターをmaster_host='xxx.xxx.xx.xx'に変更します。
> マスターユーザー='repl',
> master_password='パスワード',
> マスターログファイル='mysql-bin.00000x',
> マスターログ位置 = xxxx;

設定後、マスターとスレーブの同期を開始します: start slave 。次に、コマンドshow slave statusを使用してステータスを確認します。成功した場合、slave_io_running と slave_sql_running の両方が yes になります。

テスト

マスターデータベースへの新規レコードの追加やテーブルの追加などの操作は、ほぼリアルタイムでスレーブデータベースに反映されます。

上記は、MySQL マスタースレーブレプリケーション構成プロセスの詳細です。MySQL マスタースレーブレプリケーション構成の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • MySQL マスタースレーブレプリケーションにおける重複キーの問題を修正する方法
  • MySql マスタースレーブレプリケーションメカニズムの包括的な分析
  • MySQL マスタースレーブレプリケーションと読み取り書き込み分離の詳細な説明
  • MYSQL データベース GTID はマスタースレーブレプリケーションを実現します (超便利)
  • MySql マスタースレーブレプリケーションの実装原理と構成
  • MySQL マスタースレーブレプリケーションの原理と注意点
  • MySQL マスタースレーブレプリケーションでエラーをスキップする方法
  • MySQL マスタースレーブレプリケーションの原理からインストールと設定までを包括的に解説します。
  • MySQL マスタースレーブレプリケーションのいくつかのレプリケーション方法の概要
  • MySQL マスタースレーブレプリケーション切断の一般的な修復方法

<<:  Zabbix でフィルターを使用して監視を実装する方法

>>:  Vue3 カプセル化された虫眼鏡コンポーネントのサンプルコード

推薦する

MySQL SQL文の特殊処理文のまとめ(必読)

1.テーブル全体を更新します。データ行の列の値が空の場合は、別の列フィールドの値と同じにします。 ...

HTML onfocus gain focus および onblur lose focus イベントの詳細な説明

HTML onfocus イベント属性定義と使用法onfocus 属性は、要素がフォーカスを受け取っ...

JavaScript でよく使われる 3 つの Web エフェクトの詳細な説明

目次1要素オフセットシリーズ1.1 オフセットの概要1.2 オフセットとスタイルの違い視覚領域クライ...

PythonはデータベースMySQLの解凍バージョンのインストール構成に接続し、問題が発生しました

導入今日は Python でデータベースに接続する方法を学んだので、MySQL データベースをインス...

Hyper-v仮想マシンを使用してCentos7をインストールする

目次導入準備するシステムイメージをダウンロードHyper-Vを有効にする新しい仮想ネットワークスイッ...

HTML入力で値が変更されたときにリスナーイベントを追加することの簡単な分析

達成される効果多くの場合、入力ボックスの値の変化をリアルタイムで監視し、ブラウザを誘導してウェブサイ...

CSS で透明なグラデーション効果を実装するためのサンプルコード

Zhihu Discovery コラムのタイトル画像は、通常、以下のように表示されます。明らかに、グ...

Linux コマンド クエリ アプレットでの WePY クラウド開発の実践

みなさんこんにちは。今日は Linux コマンド クエリ アプレットでの WePY クラウド開発の実...

Docker - コンテナマウントディレクトリを変更する3つの方法のまとめ

方法 1: 設定ファイルを変更する (docker サービスを停止する必要があります) 1. doc...

MySql データベース クエリの特殊コマンド

まずMySQLのインストールMySQLソフトウェアをダウンロードし、インストールパスを変更しますMy...

CentOSはexpectを使用してスクリプトやコマンドをバッチでリモート実行します

サーバーへのファイルのアップロード、ソフトウェアのインストール、コマンドやスクリプトの実行、サービス...

vue3を使用して人間と猫のコミュニケーションアプレットを実装する

目次序文プロジェクトを初期化するデザインコードの実装オンデマンドロードオーディオを再生録音長押しイベ...

デザイン: 意志の強いデザイナー

<br />長年の専門的なアートデザイン教育を通じて「美とは何か」を学びましたが、「美を...

Vue画像拡大鏡コンポーネントのカプセル化と使用方法の詳細な説明

Vue画像拡大鏡コンポーネントパッケージに基づいて、参考までに具体的な内容は次のとおりです。画像拡大...

時間のかかるMySQLレコードのSQL例の詳細な説明

mysqlは時間のかかるSQLを記録しますMySQL は、最適化と分析のために、時間のかかる SQL...