MySQL マスタースレーブレプリケーションの原理と注意点

MySQL マスタースレーブレプリケーションの原理と注意点

前面に書かれた

最近、Mycat で特別なトピックを書いています。最近、多くの友人が面接に出かけているので、以前の面接でこれらの質問を受けたので、MySQL のマスタースレーブレプリケーションの原則と注意事項を簡単に書き留めておいてほしいと頼まれました。私:もちろん、手配済みです! !

マスタースレーブ複製原理

(1)マスターは、設定ファイルlog-binで指定されたファイルであるバイナリログにデータの変更を記録します。これらの記録はバイナリログイベントと呼ばれます。

(2)スレーブはI/Oスレッドを介してマスター内のバイナリログイベントを読み取り、それをリレーログに書き込みます。

(3)スレーブはリレーログ内のイベントをやり直し、リレーログ内のイベント情報をローカルで一つずつ実行してデータのローカル保存を完了し、自身のデータに変更を反映させる(データ再生)。

予防

(1)マスターサーバーとスレーブサーバーのオペレーティングシステムのバージョンとビット番号が一致していること。

(2)マスターデータベースとスレーブデータベースのバージョンは一致していなければならない。

(3)マスターデータベースとスレーブデータベースのデータは一貫していなければならない。

(4)マスターはバイナリログを開始します。マスターとスレーブのserver_idはローカルエリアネットワーク内で一意である必要があります。

マスタースレーブレプリケーション手順を構成する

マスターデータベース

(1)データベースをインストールする。

(2)データベース構成ファイルを変更し、server_idを指定してバイナリログ(log-bin)を有効にします。

(3)データベースを起動し、現在のログと位置番号を確認します。

(4)データベースにログインし、データ複製ユーザーを認証します(IPアドレスはスレーブIPアドレスです。双方向マスタースレーブの場合は、ローカルIPアドレスも認証する必要があります。この場合、自分のIPアドレスがスレーブIPアドレスになります)。

(5)データベースをバックアップする(ロックとロック解除を忘れずに)。

(6)バックアップデータをスレーブに送信する。

(7)データベースを起動する。

上記の手順は、一方向のマスター/スレーブ セットアップを成功させるためのものです。双方向のマスター/スレーブ セットアップを構築するには、次の手順を実行する必要があります。

(1)データベースにログインし、マスターのアドレス、ユーザー名、パスワードなどの情報を指定します(この手順は双方向マスタースレーブの場合にのみ必要です)。

(2)同期を有効にしてステータスを確認します。

スレーブの設定

(1)データベースをインストールする。

(2)データベース構成ファイルを変更し、server_idを指定します(双方向マスタースレーブシステムを構築する場合は、バイナリログlog-binも有効にする必要があります)。

(3)データベースを起動し、バックアップを復元する。

(4)現在表示されているログとその位置番号を確認します(この手順は、一方向のマスタースレーブ通信では必要ありませんが、双方向のマスタースレーブ通信では必要です)。

(5)マスターの住所、ユーザー名、パスワード等の情報を指定する。

(6)同期を有効にしてステータスを確認します。

さて、今日はここまでです。今後はMySQLのマスタースレーブレプリケーションをいろいろな形で実装していきます。Bingheです。また次回お会いしましょう! !

以上がMySQLマスタースレーブレプリケーションの原理と注意すべき点の詳細な内容です。MySQLマスタースレーブレプリケーションの詳細については、123WORDPRESS.COMの他の関連記事に注目してください。

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

<<:  VueはElement el-uploadコンポーネントを使用してピットに足を踏み入れます

>>:  CentOS8でのDockerの使い方の詳しい説明

推薦する

JavaScript キャンバスでカラフルな太陽のハロー効果を実現

この記事では、カラフルな太陽のハロー効果を実現するためのJavaScriptキャンバスの具体的なコー...

Windows 10 で Hyper-V サービスをシャットダウンするいくつかの方法

VMware Workstation を使用して Windows 10 で仮想マシンを開くと、VMw...

WeChatミニプログラムでトークンの有効期限を処理する方法

目次まず結論から質問解決Promiseを使用してコールバック関数をカプセル化する要約するまず結論から...

CentOS7.5にHarbor1.7をインストールして設定するプロセス全体

1. 必要なパッケージをダウンロードする wget -P /usr/local https://st...

three.js で 3D ダイナミック テキスト効果を実現する方法

序文みなさんこんにちは。CSS ウィザードの alphardex です。以前、海外のウェブサイトを閲...

MySQLはテーブル内のフィールドを別のテーブル内のフィールドの値と等しくなるように更新します

以下のように表示されます。 table1 を z として更新し、table2 を zb として結合し...

Vue2.x プロジェクトのパフォーマンス最適化のためのコード最適化の実装

目次1 v-ifとv-showの使用2. 計算と監視を区別する3 v-for トラバーサルでは、アイ...

XHTML CSS ページをプリンタ ページに変換する

以前は、Web ページのプリンタ対応バージョンを作成するには、印刷したときに見栄えがよくなるようにレ...

ElementUI el-select の過剰なデータに対する解決策についての簡単な説明

目次1. シナリオの説明2. 解決策オプションが多すぎる el-select コンポーネントの解決策...

JavaScriptはPromiseを使用して複数の繰り返しリクエストを処理します

1. なぜこの記事を書くのですか?重複リクエストの処理に関する記事をたくさん読んだことがあるでしょう...

Markodwnによるタイトル配置による同期スクロールのアイデアの詳細な説明

序文私が作成中の Markodwn エディターに同期スクロール機能を追加する必要があります。Baid...

Dockerカスタムネットワークの詳細な紹介

目次Dockerカスタムネットワーク1. カスタムネットワークの紹介2. カスタムネットワークを作成...

Nginx を使用してフロントエンドのクロスドメイン問題を解決する方法

序文Vue アプリケーションなどの静的ページを開発する場合、クロスドメインになる可能性のあるインター...

入力タイプとは何を意味し、入力を制限する方法

入力を制限する一般的な方法1. ボタンが押されたときに点線のボックスを消すには、入力に属性値hide...