序文 最近、高可用性プロジェクトに取り組む際には、データの同期が必要になっています。ノードが 2 つしかないため、マスター間同期では循環同期のリスクがある可能性があるため、MySQL マスター スレーブ同期の使用を検討します。 MySQL のデータ同期を経験したことがない方は、データ同期は難しいと思うかもしれませんが、以下の操作を実行すると、同期が非常に簡単であることがわかります。結局のところ、設定方法と問題のトラブルシューティング方法を知るだけでよく、MySQL チームの基盤となる特定の実装がすでにそれを実現するのに役立っています。 では、早速本題に入りましょう。 (1)まず、2つのデバイス(マスターとスレーブ)があることを確認し、各デバイスにMySQLデータベースをインストールします。インストールが完了したら、 mysql -u [データベースユーザー名] -p [ユーザーパスワード] を使用します。MySQL にログインできれば、インストールは成功です。 (2)MySQL設定ファイルを編集します。パスは通常、/etc/mysql/mysql.conf.d/mysqld.cnf(MySQLのインストール時にユーザーが指定したディレクトリ)です。 例: /etc/my.conf など)。必要に応じて、マスターおよびスレーブ mysql の [mysqld] モジュールの下に次のコンテンツを追加します。 [mysqld] デフォルトのストレージエンジン = innodb innodb_file_per_table=1 照合サーバー=uft8_general_ci init-connect='名前を設定 uft8' バインドアドレス=0.0.0.0 log_bin=mysql-bin リレーログ=mysqlリレービン 有効期限切れログ日数=100 スレーブ開始をスキップ=1 binlog_do_db=[同期するデータベースの名前] binlog-ignore-db=mysql、sys、information_schema、performance_schema server-id=[マスターの場合は1、スレーブの場合は2] 自動増分増分=2 自動増分オフセット=1 オープンファイル制限=65535 mac_connections=1000 スレーブスキップエラー=すべて (3)シェルを使用してマスターサーバーとスレーブサーバーに接続し、mysql -u [データベースユーザー名] -p [ユーザーパスワード]でそれぞれマスターノードとスレーブノードのmysqlにログインし、同期ユーザーreplを作成して、次のコマンドを実行します。 'repl' で識別される 'repl'@'%' に、GRANT オプションを使用して *.* のすべての権限を付与します。 次に、MySQL 操作ページを終了し、MySQL サービスを再起動します。コマンドは次のとおりです。 systemctl で mysql.service を再起動します。 次に、メインノード Mysql に入り、Mysql の File 列と Positon 列を表示します。コマンドを実行する: (4)スレーブサーバーにログインし、mysql -u [データベースユーザー名] -p [ユーザーパスワード]を使用してMySQLに入り、以下を実行します。 奴隷を停止します。 スレーブをリセットします。 マスターをmaster_host='[マスターノードのIP]'、master_user='repl'、master_password='repl'、master_log_file='[mysql-bin.000001、(3)のファイル列を参照]'、master_log_pos=[245、(3)のポジション列を参照]に変更します。 出口; (5)スレーブサーバーのスレーブライブラリを起動し、mysql -u [データベースユーザー名] -p [ユーザーパスワード]でスレーブノードMysqlに入り、以下のコマンドを実行します。 スレーブを起動します。 バックアップ サービスのステータスを表示するには、 次に、メイン データベースにデータを挿入して、そのデータが自動的にスレーブ データベースに追加されるかどうかを確認します。ちょっと面白いと思いませんか?今すぐテストしてみましょう。 PS: 同期の問題が発生した場合はどうなりますか? (1)上図のMaster_Log_File属性とRead_Master_Log_Pos属性がマスターノードのクエリ結果と一致しているかどうかを確認します。 (2)データベースからメインデータベースへの接続がタイムアウトした可能性があります。接続遅延を増やしてください。 (3)上記の問題が解決しない場合は、MySQLログを確認して原因を調べてください。 要約する 以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。 以下もご興味があるかもしれません:
|
<<: VMware に Linux システム (Redhat8) と仮想マシンのネットワーク構成をインストールする方法
>>: jQueryとCSSを組み合わせてトップに戻る機能を実現
Samba サービスでも NFS サービスでも、サーバーの起動時にリモート共有リソースが自動的にマ...
1. Workstationで仮想マシンのハードウェアバージョンを変更するWorkstation ...
目次1. イメージをプルする2. Redisコンテナを作成する3. コンテナを起動するためにクラスタ...
この記事は主に、nginx に基づいてブラウザネゴシエーションキャッシュを設定する詳細なプロセスを紹...
目次序文クエリの使用シナリオ例時間間隔クエリクエリ日付と今日の時間の比較データ一般的なサイクルタイム...
WIN10 64ビットに最新のMySQL8.0.18をインストールダウンロード公式サイトから最新バ...
目次序文方法1: 高コントラスト方法2: getBoundingClientRect() APIを使...
目次背景質問問題分析と解決策新たな問題問題分析と解決策背景node-schedule スケジュール ...
MySQL ページング分析の原理と効率改善PERCONA PERFORMANCE CONFERENC...
最近、Linux に Aphace、mysql、php をインストールするときに多くの問題に遭遇しま...
PHP7 がリリースされてからかなり時間が経ちますが、パフォーマンスが大幅に向上したことはよく知られ...
目次1. React フックと純粋関数2. シンプルなmyUseState 3. myUseStat...
キャンバスを使ってカラフルな時計を書いてみよう! 1. タイトル(1)時計のケースが与えられ、ページ...
目次序文最適化変数の抽出二次包装 el-tag コンポーネント使用要約する序文バックエンドシステムの...
MySQL のバージョンは、Enterprise Edition と Community Editi...