マルチソースレプリケーショントポロジでは、少なくとも 2 つのソースと 1 つのレプリカが構成されている必要があります。 これらのチュートリアルでは、2 つのソース source1
と source2
およびレプリカ replicahost
があると想定しています。 レプリカは、source1
の db1
および source2
の db2
の各ソースから 1 つのデータベースをレプリケートします。
マルチソースレプリケーショントポロジのソースは、GTID ベースのレプリケーションまたはバイナリログ位置ベースのレプリケーションのいずれかを使用するように構成できます。 GTID ベースのレプリケーションを使用してソースを構成する方法については、セクション17.1.3.4「GTID を使用したレプリケーションのセットアップ」 を参照してください。 ファイル位置ベースのレプリケーションを使用してソースを構成する方法は、セクション17.1.2.1「レプリケーションソース構成の設定」 を参照してください。
マルチソースレプリケーショントポロジのレプリカには、MySQL 8.0 のデフォルトであるレプリカ接続メタデータリポジトリおよびアプライヤメタデータリポジトリ用の TABLE
リポジトリが必要です。 マルチソースレプリケーションは、非推奨の代替ファイルリポジトリと互換性がありません。
レプリカが接続に使用できるすべてのソースで適切なユーザーアカウントを作成します。 すべてのソースで同じアカウントを使用することも、それぞれで異なるアカウントを使用することもできます。 レプリケーションの目的にだけアカウントを作成する場合、そのアカウントには REPLICATION SLAVE
権限だけが必要です。 たとえば、レプリカ replicahost
から接続できる新しいユーザー ted
を設定するには、mysql クライアントを使用して各ソースで次のステートメントを発行します:
mysql> CREATE USER 'ted'@'replicahost' IDENTIFIED BY 'password';
mysql> GRANT REPLICATION SLAVE ON *.* TO 'ted'@'replicahost';
MySQL 8.0 からの新規ユーザーのデフォルト認証プラグインの詳細および重要な情報は、セクション17.1.2.3「レプリケーション用ユーザーの作成」 を参照してください。