MySQLデータベースのマスタースレーブ同期構成と読み取り書き込み分離

MySQLデータベースのマスタースレーブ同期構成と読み取り書き込み分離

MySQL マスター スレーブ レプリケーションを使用する利点は次のとおりです。

1. 安定性を向上させるために、マスタースレーブサーバーアーキテクチャを採用しています。プライマリ サーバーに障害が発生した場合、スレーブ サーバーを使用してサービスを提供できます。

2. マスターサーバーとスレーブサーバーでユーザー要求を個別に処理すると、データ処理の効率が向上します。

3. データが偶発的に失われないように、マスター サーバー上のデータをスレーブ サーバーにコピーします。

環境の説明:

新しい企業では、マスター/スレーブ レプリケーション アーキテクチャを備えた MySQL データベースを構築する必要があります。

マスター サーバー (mysql-master): IP アドレス: 192.168.48.128、mysql がインストール済み、ユーザー データなし。

スレーブ サーバー (mysql-slave): IP アドレス: 192.168.48.130、mysql がインストール済み、ユーザー データなし。

マスターサーバーとスレーブサーバーの両方が正常にサービスを提供できます。

マスターサーバーの構成

1. 通常は /etc/ ディレクトリにあるデータベース構成ファイル my.cnf または my.ini (Windows) を編集します。

[mysqld]の下に次のコードを追加します。

ログ bin = mysql bin
サーバーID=1
innodb_flush_log_at_trx_commit=1
同期バイナリログ=1
binlog-do-db = wordpress
binlog_ignore_db = mysql

例:

server-id=1 //server-id=1 の 1 は、一意であれば任意に定義できます。

binlog-do-db=wordpress // は wordpress のみをバックアップすることを意味します。

binlog_ignore_db=mysql //mysql のバックアップを無視することを示します。

binlog-do-db と binlog_ignore_db がない場合、すべてのデータベースがバックアップされます。

2. MySQLを再起動します:# service mysqld restart restart

3. MySQL にログインし、MySQL にバックアップ アカウントを追加して、スレーブ サーバーに承認します。

[root@localhost~]#mysql -u root –p 123456 mysqlにログイン
mysql> 'backup' によって識別される 'backup'@'192.168.48.130' に *.* のレプリケーション スレーブを許可します。

バックアップ ユーザーを作成し、192.168.48.130 にアカウントの使用を許可します。

4. マスター データベースのステータスを照会し、FILE と Position の値を書き留めます。これは、後でスレーブ サーバーを構成するときに使用されます。

mysql>show masterstatus; 表示された情報を書き留めてください。これはスレーブ サーバーを構成するときに使用されます。

+——————+————-+————–+——————

+|ファイル|位置|Binlog_Do_DB|Binlog_Ignore_DB|

+——————+————-+————–+——————

+|mysql-bin.000001|253|dbispconfig|mysql|

+——————+————-+————–+——————+

1行目挿入(0.00秒)

スレーブ サーバーの場合:

1) /etc/my.cnf にパラメータ log-bin=mysql-bin と server-id=1 が含まれていることを確認し、server-id=1 を server-id=10 に変更します。変更後は次のようになります。

[mysqld]

log-bin=mysql-bin //バイナリファイルの開始 server-id=10 //サーバーID

2) MySQL サービスを再起動します。

[root@localhost~]#mysqladmin-p123456シャットダウン

[root@localhost~]#mysqld_safe--user=mysql&

3) mysqlにログインし、次の文を実行します。

[root@localhost~]#mysql-uroot–p123456

mysql>changemastertomaster_host='192.168.48.128'、master_user='backup'、master_password='backup'、master_log_file='mysql-bin.000003'、master_log_pos=401;

4) スレーブ同期を開始します。

mysql>スレーブを起動します。

5) マスターとスレーブの同期を確認します。Slave_IO_Running と Slave_SQL_Running の両方が Yes の場合、マスターとスレーブのレプリケーション接続は正常です。
mysql> show slave status\G

構成が正常かどうか、および MySQL マスター スレーブが正常にレプリケートできるかどうかを確認します。

メイン データベース上に新しいデータベースを作成し、データベースにテーブルといくつかのデータを書き込みます。

[root@localhost~]#mysql -u root –p 123456

mysql>データベースmysqltestを作成します。

mysql>mysqltestを使用します。

mysql>テーブルuser(idint(5),namechar(10))を作成します。

mysql> ユーザー値に挿入(00001, 'zhangsan');

データが正常にコピーされたかどうかをデータベースから確認します。

[root@localhost~]#mysql -u root –p 123456

mysql>データベースを表示;

mysql>mysqltest.user から * を選択します。

以下もご興味があるかもしれません:
  • MySQL マスタースレーブ同期、読み取り書き込み分離構成手順
  • MySQLのマスタースレーブレプリケーションと読み取り書き込み分離を理解するための記事
  • MySQL マスタースレーブレプリケーション 読み書き分離の設定方法の詳細説明
  • MySQL マスタースレーブレプリケーションの読み書き分離構造の詳細な説明
  • MySQL のマスタースレーブレプリケーションと読み取り書き込み分離の原理と使用法の詳細な説明
  • MySQLデータベースのマスタースレーブレプリケーションと読み取り書き込み分離に関する詳細なチュートリアル

<<:  JavaScript はクリックして画像の形状を変更する (変換アプリケーション) を実装します。

>>:  Linux CDの意味と使い方

推薦する

JS 配列の重複を排除する 9 つの高度な方法 (実証済みで効果的)

序文一般的な方法はここには記載されていませんが、等しいかどうかを判断するための二重ループや、比較のた...

Vueルーティングナビゲーションガードの簡単な理解

目次1. グローバルガード1. グローバル前線警備2. グローバル解像度ガード3. グローバルポスト...

ページ内のリストプルダウン効果を実現するための純粋なCSS

次のような効果がよく見られます。 そうです、ページ上でよく使われる「展開と折りたたみ」のインタラクシ...

Vue+canvas は、ウォーターフォール チャートを上から下までリアルタイムに更新する効果を実現します (QT と同様)

早速ですが、デモ画像をご紹介します。実装されている機能は、左側に凡例、右側にウォーターフォール チャ...

VMware仮想マシンの起動時に黒い画面が表示される問題を解決する

# VMware ハードディスクの起動優先順位を調整するステップ 1: 電源をオンにすると、BIOS...

個人ブログシステムを構築するためのDockerの超シンプルな実装

Dockerをインストールするyumパッケージを最新バージョンに更新します: sudo yum up...

JavaScript で charAt() を使用して、最も頻繁に出現する文字とその出現回数をカウントする方法を教えます。

前回は、JavaScript の charAt() メソッドの使い方を紹介しました。今日は、最も多く...

HTMLで境界線を設定する3つの方法の詳細な説明

HTML で境界線を設定する 3 つの方法 境界線の幅: 1px 2px 2px; 境界線のスタイル...

ulとliの基本的な使用法の分析

ナビゲーション、少量のデータテーブル、中央揃え<!DOCTYPE html PUBLIC &q...

MySQL テーブルにおける非主キー列オーバーフロー監視の詳細な説明

今日もまた罠に落ちてしまいました。 私は以前MySQLの主キーオーバーフローに遭遇したことがあり、そ...

HTML のセルパディングとセルスペース属性を図で説明します

セル - 表の内容 セルの余白 (表の余白) (cellpadding) - セルの外側の距離を表し...

Vue3の一般的なAPIの使用方法の紹介

目次ライフサイクルの変化反応的な参照vue2.x では ref を使用して要素タグを取得します。vu...

ウェブページ作成のヒントのまとめ

序文この記事は主に、日常の Web ページ制作で遭遇する問題解決スキルの一部をまとめ、皆さんの参考と...

MySQL 1130例外、リモートログインできない解決策

目次質問: 1. リモートログイン権限を有効にする: 2. MySQLの権限を更新します。 3. テ...

Docker のインストールと構成イメージの高速化の実装

目次DockerバージョンCentOS に Docker エンジンをインストールするシステム要件古い...