01 InnoDBレプリカセットの紹介InnoDB ReplicaSet は MySQL 8.0 で導入され、私たちがよく知っているレプリケーション機能を提供します。MongoDB レプリカ セットの概念を知っていれば、InnoDB ReplicaSet を理解しやすくなります。 InnoDB ReplicaSet は次の技術を使用します。 1. より強力なクライアント、MySQL Shell 2. 軽量ミドルウェアである MySQL Router は、MongoDB の mongos の役割に相当します。 3. MySQLサーバー(MySQLサービスとも呼ばれる) InnoDB ReplicaSet (以下、InnoDB レプリカ セットと呼びます)。これは、MySQL のレプリケーション テクノロジを使用します。レプリカ セットには、プライマリ ノードと 1 つ以上のセカンダリ ノードがあります。InnoDB クラスタ (InnoDB クラスタは別の MySQL 高可用性ソリューションです) のような障害の自己修復やマルチマスター モードは提供されませんが、関連するノードを追加、削除、および構成するための手動の方法を提供します。 通常、MySQL Shell の AdminApi を使用して、innodb レプリカ セットを管理します。AdminAPI には、js と python の 2 つのバージョンがあります。スクリプトを簡単に記述して、MySQL を自動的にデプロイできます。AdminAPI は、MySQL インスタンス セット用の効果的な最新のインターフェイスを提供し、中央ツールからデプロイメントをプロビジョニング、管理、監視できるようにします。 InnoDB レプリカ セットは MySQL クローン コンポーネントをサポートしています。クローン プラグインを使用すると、レプリカ セットを簡単に構築できます。 InnoDB ReplicaSet は MySQL Router と緊密に統合されており、AdminAPI を使用して操作できます。 MySQL Router は、InnoDB ReplicaSet (ブートストラップと呼ばれるプロセス) に基づいて自動的に構成できるため、ルーターを手動で構成する必要はありません。 02 InnoDBレプリカセットの制限上記では、InnoDB レプリカ セットの基本的な知識と概念をいくつか紹介しました。ここでは、その制限について説明する必要があります。InnoDB レプリカ セットの制限は、主に InnoDB クラスターとの比較によって反映されます。以下にリストします。 1.自動故障切替機能はありません。プライマリ データベースが使用できない場合は、AdminApi を使用してフェイルオーバーを手動でトリガーする必要があります。 2. 事故や利用不能によるデータ損失を防ぐことは不可能であり、障害発生時には適用されていないトランザクションが失われる可能性があります。 3. 予期しない終了の後のデータの不整合を防ぐことは不可能です。ネットワークの問題によりマスターノードが一時的に切断された場合、スレーブノードがマスターノードに昇格すると、ブレインスプリットが発生する可能性があります。 4. InnoDB レプリカ セットはマルチマスター モードをサポートしておらず、従来のマルチマスター書き込みレプリケーション ソリューションではデータの一貫性を保証できません。 5. InnoDB レプリカ セットは非同期レプリケーションに基づいており、MGR のようなフロー制御を実行できないため、読み取りのスケーラビリティはある程度制限されます。 6. すべてのセカンダリ インスタンスはプライマリ インスタンスから複製する必要があるため、ソース インスタンスに一定の影響が出る可能性があります。 上記の説明から、InnoDB レプリカ セットと MongoDB レプリカ セットの間にはまだ大きなギャップがあることは容易にわかりますが、これは MySQL 担当者が高可用性への道で踏み出した重要なステップであるため、引き続き検討する必要があります。 以降のバージョンの反復により、これらの問題が注目され、解決され、ユーザーの要件をさらに満たすためのより良いソリューションが生まれると信じています。 03 導入前に知っておくべきことInnoDB レプリカ セットの動作環境には、次のような特定の要件があります。 1. MySQL 8.0 以上のみをサポートします。 2. GTIDのみをサポートするレプリケーション方法 3. 行形式のバイナリログのみがサポートされており、ステートメント形式のバイナリログはサポートされていません。 4. フィルターのコピーはサポートされていません 5. 追加の複製チャネルの確立を許可しない 6. レプリカセットにはプライマリノードが1つだけあり、セカンダリノードは複数存在する可能性があります。MySQL Routerは各ノードを監視します。 7. レプリカ セットは、MySQL Shell によって完全に管理される必要があります。MySQL Shell 外部でのインスタンスの構成と変更はサポートされていません。 次の記事では、最も基本的なインストール プロセスから始めて、MySQL Shell、MySQL Router のインストール、および InnoDB レプリカ セットの設定プロセスについて詳しく説明します。 以上がMySQL InnoDB ReplicaSetの簡単な紹介です。MySQL InnoDB ReplicaSetの詳細については、123WORDPRESS.COMの他の関連記事をご覧ください。 以下もご興味があるかもしれません:
|
<<: JavaScript と CSS を最適化してウェブサイトのパフォーマンスを向上させる
Docker の作成Docker Compose は、複数の Docker コンテナを定義して実行す...
目次Express ミドルウェアとは何ですか? Expressミドルウェアを作成するための要件Exp...
Docker で Zookeeper を素早くインストール会社を変わってから長らくZookeeper...
1. MySQL WorkbenchをダウンロードするWorkbench は、MySQL のグラフィ...
目次1. サブクエリとは何ですか? 2. サブクエリはどこに表示されますか? 3. Whereサブク...
効果画像: 実装コード: <テンプレート> <div id="map&q...
開発の過程では、インスタンスの vm.$refs(this.$refs) を使用して、ref で登録...
目次1. 遅いクエリSQLを見つけて最適化する方法a. スローログに基づいてスロークエリSQLを見つ...
デフォルトでは、 /etc/default/docker 設定は有効になりません。docker 環境...
目次1. 配列の分離割り当て1.1 配列分離割り当てとは何ですか? 1.2 配列分離割り当てに失敗し...
Kubernetes チームは最近、最新バージョンの Docker でサポートされている機能を廃止...
先日、外国人の方がHTML+CSSを使ってHamburgerMenuを実装している動画を見ました。最...
数日前に CentOS8 がリリースされました。8 の最初のバージョンですが、今日は VM12 に ...
この記事では、ネイティブ JS で実装された特殊効果メッセージ ボックスを紹介します。効果は次のとお...
データベースを構築してプログラムを書くとき、日付と時刻の使用は避けられません。データベースには、ti...