MySQL レプリケーションの監視と自動フェイルオーバーの詳細な分析

黄舟
リリース: 2017-03-14 16:45:23
オリジナル
1502 人が閲覧しました

1. サーバーの計画

マスター:192.168.0.152 スレーブ: 192.168.0.153 192.168.0.154
監視サーバー: 192.168.0.154

注: 実際の運用環境では、データベースのレプリケーションを監視するための別のサーバーを用意するのが最善です。ここでは、Salve サーバーを監視サーバーとして直接使用します。

2、

インストールMySQLユーティリティとMySQLコネクタ

MySQLユーティリティとMySQLコネクタをダウンロードしてインストールします

192.168.0.154(監視サーバー)サーバーで次のコマンドを実行して、ダウンロードしたMySQLユーティリティとMySQLコネクタをインストールします

yum install mysql-connector-python-2.1.4-1.el6.x86_64.rpm mysql-utilities-1.6.4-1.el6.noarch.rpm
ログイン後にコピー

3. マスター環境 1 つとスレーブ環境 2 つのレプリケーション環境を構成します

マスター: 192.168.0.152

スレーブ: 192.168.0.153 192.168.0.154
監視サーバー: 192.168.0.154
レプリケーションを構成するには、ブログ投稿を参照してください。 MySQL——「MS マスター/スレーブ レプリケーション (読み取り/書き込み分離) 実装」、「MySQL - MSS マスター/スレーブ レプリケーション (読み取り/書き込み分離) 実装」 、「MySQL - BinLog レプリケーションを GTID レプリケーションにアップグレードする 4 つのステップ」。

4. 監視マシンを認可します

192.168.0.152、192.168.0.153、192.1 でそれぞれ


mysql>grant create,insert ,drop, select, super, replication slave, reload on *.* to 'replm'@'192.168.0.154' identified by password 'replm' with grant option;
ログイン後にコピー

を実行します。 68.0.154 サーバーは、それぞれ

を実行することで確認できます。

mysql>show grants for replm@192.168.0.154;
ログイン後にコピー

認証が成功したかどうか。

注: 別のサーバーがレプリケーションを監視する場合は、レプリケーションに関係するマスターサーバーとスレーブサーバーでのみ認可操作を実行します。認可ターゲット IP はモニタリングサーバーの IP です

5. マスターサーバーとスレーブサーバーを変更します。

、設定を有効にします以下は、レプリケーション監視とフェイルオーバーを設定するときの my.cnf ファイルのコア設定です

[mysqld]
log-bin=/data/mysql3306log/mysql-bin
binlog-format=mixed
server-id = 001
sync_binlog=1
gtid-mode=on
enforce-gtid-consistency
log-slave-updates
report-host=192.168.0.154
master-info-repository=TABLE
relay-log-info-repository=TABLE
ログイン後にコピー

設定を変更した後、mysql サーバーを再起動すると、mysql サーバーは 2 つの設定を保存しますこのとき、use mysql;show tables; を実行すると、mysql データベースにslave_master_infoとslave_relay_log_infoが新しく作成されていることがわかります。

6.監視端末を起動


192.168.0.154(監視サーバー)で実行

#mysqlfailover --master=replm:replm@192.168.0.152 --discover-slaves-login=replm:replm
ログイン後にコピー

これでレプリケーション監視と自動フェイルオーバー機能の設定が完了しました。

注: マスターサーバーがハングアップすると、mysqlfailover はスレーブサーバーの 1 つをマスターとして自動的に選択し、他のスレーブは新しいマスターサーバーに対応します。
注: マスターがハングアップすると、mysqlfailover は他のスレーブの中からマスターとしてサーバーを自動的に選択します。元のマスター サーバーを手動で再起動すると、mysqlfailover は、ハングアップした元の mysql サーバーが再起動されたことを自動的に検出できません。最初にハングアップした mysql サーバーを手動で再起動し、スレーブ サーバーとしてレプリケーションに追加します。

以上がMySQL レプリケーションの監視と自動フェイルオーバーの詳細な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!