概要 いずれかのデータベースに対する操作は他のデータベースに自動的に適用され、2 つのデータベースのデータの一貫性が常に保たれます。 これには次の利点があります。
MySQL マスタースレーブレプリケーション方式 1 マスターデータベースがデータベースを操作すると、操作記録がbiglogログファイルに書き込まれます。 2 スレーブデータベースは、ネットワークを介してマスターデータベースのログファイルを取得し、それをローカルログシステムに書き込み、データベース内のデータベースイベントを1つずつ完了します。 3 スレーブはリレー ログ内のイベントをやり直し、マスターの変更を自身のデータベースに反映するため、両端のデータはまったく同じになります。 環境 オペレーティングシステム: CentOS MySQL バージョン: mysql-5.6.26 (マスターとスレーブのデータベース バージョンは一致している必要があります) マスター1の構成 1 バイナリログを有効にする
サーバーID=6 ログ bin = mysql bin 2 MySQLを再起動し、ログインして認証する
'123456' で識別される 'repl'@'10.211.55.7' に、*.* 上のレプリケーション スレーブ、レプリケーション クライアントを許可します。 IPアドレスはスレーブサーバーのIPアドレスです 3 ログステータスの表示
マスター2の構成 1 バイナリログを有効にする
サーバーID=8 ログ bin = mysql bin 2 MySQLを再起動し、ログインして認証する
'123456' で識別される 'repl'@'10.211.55.7' に、*.* 上のレプリケーション スレーブ、レプリケーション クライアントを許可します。 IPアドレスはスレーブサーバーのIPアドレスです 3 ログステータスの表示
スレーブ構成 1 設定ファイルを変更します(スレーブのデフォルトデータベースが起動されるポートは閉じられている必要があることに注意してください service mysql stop)
[mysqld] binlog-ignore-db=mysql binlog_format=混合 有効期限=7 スレーブスキップエラー=1062 リレーログ=mysqlリレービン ログスレーブ更新=1 [mysqld_マルチ] mysqld = /usr/bin/mysqld_safe です。 mysqladmin = /usr/bin/mysqladmin ユーザー=root パスワード=123456 [mysqld6] ポート=3306 データディレクトリ=/home/mysql/data6 pidファイル=/home/mysql/data6/mysql.pid ソケット=/home/mysql/data6/mysql.sock ユーザー=mysql サーバーID=7 [mysqld8] ポート=3307 データディレクトリ=/home/mysql/data8 pidファイル=/home/mysql/data8/mysql.pid ソケット=/home/mysql/data8/mysql.sock ユーザー=mysql サーバーID=7 2 ビルドディレクトリを初期化する /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/home/mysql/data6 & /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/home/mysql/data8 & 3 ディレクトリの権限を変更する chown -R mysql /home/mysql/data6 chown -R mysql /home/mysql/data8 4 サービスを開始する mysqld_multi --defaults-file=/etc/my.cnf 開始 6 mysqld_multi --defaults-file=/etc/my.cnf 開始 8 5 ログインテスト(別途認証) mysql -P 3306 -S /home/mysql/data6/mysql.sock mysql> マスターを、master_host='10.211.55.6'、master_user='repl'、master_password='123456'、master_port=3306、master_log_file='mysql-bin.000001'、master_log_pos=120 に変更します。 mysql> スレーブを起動します。 mysql -P 3307 -S /home/mysql/data8/mysql.sock mysql> マスターを、master_host='10.211.55.8'、master_user='repl'、master_password='123456'、master_port=3306、master_log_file='mysql-bin.000001'、master_log_pos=120 に変更します。 mysql> スレーブを起動します。 はい、以上です。 要約する 上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。 以下もご興味があるかもしれません:
|
<<: Linuxカーネルがプロセスアドレス空間に侵入し、プロセスメモリを変更する方法
>>: Vue.js の計算プロパティ、監視プロパティ、ライフサイクルの詳細な説明
最初のステップはmysqlコンテナを作成することです docker exec -it コンテナID ...
OO、デザイン パターン、および多くのオブジェクト指向の原則について話す前に、まず 1 つのことを習...
目次スロットルと手ぶれ防止コンセプト:違いスロットリングの実装スロットル機能手ぶれ補正の実装手ぶれ防...
JSON 形式のフィールドは、MySQL 5.7 で追加された新しい属性ですが、基本的には文字列とし...
目次1. 構造文字列2. タプルを返す3. Dict辞書にアクセスする4. 図書館を利用する5. リ...
SEO とセキュリティを考慮して、301 リダイレクトが必要です。以下の一般的な処理には Nginx...
第一に: CSSを導入する4つの方法CSS を導入する方法には、インライン スタイル、埋め込みスタイ...
序文:非常に遅いクエリとリクエストのタイムアウトのアラートを受け取りました。メトリックを通じて My...
リンク: https://qydev.weixin.qq.com/wiki/index.php?ti...
序文この記事では主に、MySQL ストレージ テーブル エラー「java.sql.SQLExcept...
Mysqlトランザクション操作の失敗を解決する方法トランザクションの原子性: トランザクションは、デ...
Ubuntu コマンドライン ウィンドウで次の操作を実行します。 1. 仮想環境をインストールする...
幅: 自動子要素(コンテンツ+パディング+境界線+余白を含む)は、親要素のコンテンツ領域全体を埋めま...
目次MySQL クエリツリー構造1. ツリー構造について2. MySQLでカスタム関数を定義する方法...
目次1. スクリプトを使用してDockerのTLSを暗号化する2. Dockerの設定を変更してリモ...