MySQL マスタースレーブレプリケーションの読み書き分離構造の詳細な説明

MySQL マスタースレーブレプリケーションの読み書き分離構造の詳細な説明

MySQL マスタースレーブ設定

MySQL のマスター/スレーブ レプリケーションと読み取り/書き込み分離設定は非常にシンプルです。

設定my.cnfファイルを変更する

マスターとスレーブの設定は似ています。

[mysqld]
ログ bin = mysql bin 
サーバーID=222

log-bin=mysql-binはバイナリログを有効にすることを意味します。

server-id=222サーバーの一意の ID を設定することを意味します。デフォルト値は 1 で、通常は IP アドレスの最後のセグメントです。他の MySQL サーバーと重複しない限り、別の値に書き込むことができます。

ここで、MySQLのデフォルトのmy.cnfファイルは、 /etc/mysql/conf.d conf.dパス内のすべてのcnfファイルを参照します。したがって、 /etc/mysql/conf.d conf.dディレクトリにcnfファイルを追加し、上記の内容を追加することもできます。

マスターマシンとスレーブマシンでそれぞれmysqlを再起動します。

/etc/init.d/mysql を再起動

マスターにアカウントを作成し、スレーブを承認し、スレーブで関連する設定を行う

マスターマシンとスレーブマシンにそれぞれ root ユーザーとしてログインします。

mysql -uroot -p // 入力後、root パスワードの入力を求められます。root パスワードを入力するとログインできます。

マスターマシン上

アカウントを作成し、スレーブ マシンを認証します。ユーザー名とパスワードに注意してください。これらは任意に設定できますが、スレーブが後で必要になるため、必ず書き留めておいてください。

'ryugou' によって識別される 'ryugou'@'%' に *.* のレプリケーション スレーブ権限を付与します。

通常、ルート アカウントは使用されません。@'%' は、アカウントとパスワードが正しい限り、すべてのクライアントが接続できることを意味します。ここでは、セキュリティを強化するために、192.168.145.226 などの特定のクライアント IP アドレスを使用できます。

スレーブマシン上

マスターステータスを確認する

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

MySQLターミナルに入力

次のようにコードをコピーします

マスターをmaster_host='xxx.xxx.xxx.xxx'、master_user='ryugou'、master_password='ryugou'、master_log_file='mysql-bin.000004'、master_log_pos=120に変更します。

master_log_file はマスター マシン上の対応するコンテンツであり、master_log_pos も同様です。マスター ステータスのコンテンツに注意してください。

master_user と master_password は、マスター マシンでの認証時に設定されたユーザー名とパスワードです。

スレーブサーバーを起動する

スレーブを起動します。

スレーブレプリケーション機能のステータスを確認する

スレーブステータスを表示\G;

リストが表示されます

主に、Slave_IO_Running と Slave_SQL_Running のステータスが両方とも Yes であることを確認します。

マスターはデータベースを作成し、サーバーからユーザーのアクセス権を設定します。

マスターにデータベース テストを作成すると、スレーブにもテストが作成されます。ここで、読み取りと書き込みを分離します。スレーブ マシン上の gou というユーザーはアクセスできますが、読み取りのみ可能です。

test.* の select 権限を gou に付与します。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • MySQL データベースのマスター スレーブ分離のサンプル コード
  • MySQL マスタースレーブ同期、読み取り書き込み分離構成手順
  • MySQL マスタースレーブレプリケーション、読み取り/書き込み分離、バックアップとリカバリの詳細な説明
  • MySQL マスタースレーブレプリケーション 読み書き分離の設定方法の詳細説明
  • Linux システムで MySQL マスター/スレーブ分離を構成する手順

<<:  Vue ベースの要素ボタン権限実装ソリューション

>>:  Dockerはbusyboxを使用してベースイメージを作成します

推薦する

Mac OS 10.11 での MySQL 5.7.12 のインストールと設定のチュートリアル

Mac OS 10.11 に MySQL をインストールして設定する方法を、主に写真を使って手順を簡...

Nginx+Tomcat 負荷分散クラスタのインストールと構成のケースの詳細な説明

目次序文1. Nginx+Tomcat 2. Nginxサーバーを構成する3. Tomcatアプリケ...

mysql5.7.17.msi インストール グラフィック チュートリアル

mysql-5.7.17.msiのインストール、スクリーンショットに従ってください、ステップバイステ...

docker を使用した pxc クラスターのインストールに関する詳細なチュートリアル

目次序文事前準備ディレクトリを作成するcustom.cnf を作成する証明書を作成するpxc クラス...

ウェブデザインにおける画像フォーマットとデザインの関係を詳しく説明

なぜこの領域のコンテンツを整理したいのでしょうか。それは、油絵の具とキャンバスを理解する必要があり、...

DIV と画像の水平および垂直の中央揃えは複数のブラウザと互換性があります

最初のタイプ: 完全な CSS コントロール、レイヤーフローティング (ログインページに適しています...

Vue は QR コード スキャン機能を実装します (スタイル付き)

必要: vue を使用して QR コードのスキャンを実現します。プラグイン: QRコードリーダー;プ...

Ubuntu の空き容量を増やす 5 つの簡単な方法

序文ほとんどの人は、システム ディスク ストレージが少ないときにこの操作を実行するか、Linux シ...

Jira リバース プロキシを実装するための nginx について

概要: nginx リバース プロキシ jira を構成し、https を実装します。Tomcat ...

Nginxの書き換えモジュールの詳細な説明

書き換えモジュールは ngx_http_rewrite_module モジュールです。その主な機能は...

Centos6.5 に zabbix2.4 をインストールするチュートリアル図

centos-DVD1バージョンシステムの固定IPアドレスは192.168.159.128で、cen...

Ubuntu 20.04 Firefox でビデオを再生できない (Flash プラグインがない) 場合の解決策

1. Flashプラグインパッケージのダウンロードアドレス: https://get.adobe.c...

Viteプロジェクトを作成する手順

目次序文yarn create は何をしますか?ソースコード分析プロジェクトの依存関係テンプレート構...

ElementUIはカスケードセレクタを実装します

この記事の例では、カスケードセレクターを実装するためのelementUIの具体的なコードを参考までに...

JavaScript ループトラバーサルの 24 種類のメソッドをすべてご存知ですか?

目次序文1. 配列走査法1. 各() 2. マップ() 3. 〜のために4. フィルター() 5. ...