Documentation Home
MySQL Shell 8.0
Download this Manual
PDF (US Ltr) - 1.4Mb
PDF (A4) - 1.4Mb


MySQL Shell 8.0  /  ...  /  MySQL InnoDB クラスタ の要件

このページは機械翻訳したものです。

6.2.1 MySQL InnoDB クラスタ の要件

InnoDB クラスタ の本番デプロイメントをインストールする前に、使用するサーバーインスタンスが次の要件を満たしていることを確認します。

  • InnoDB クラスタ は Group Replication を使用するため、サーバーインスタンスは同じ要件を満たす必要があります。 グループレプリケーションの要件 を参照してください。AdminAPI には、インスタンスがグループレプリケーション要件を満たしていることを確認する dba.checkInstanceConfiguration() メソッドと、要件を満たすようにインスタンスを構成する dba.configureInstance() メソッドが用意されています。

    注記

    サンドボックスデプロイメントを使用する場合、インスタンスはこれらの要件を自動的に満たすように構成されます。

  • グループレプリケーションメンバーには、InnoDB 以外のストレージエンジン (MyISAM など) を使用してテーブルを含めることができます。 このようなテーブルは、グループレプリケーションでは書き込むことができないため、InnoDB クラスタ の使用時には書き込まれません。 InnoDB クラスタ を使用してこのようなテーブルに書き込むことができるようにするには、InnoDB クラスタ でインスタンスを使用する前に、このようなすべてのテーブルを InnoDB に変換します。

  • パフォーマンススキーマは、InnoDB クラスタ で使用する任意のインスタンスで有効にする必要があります。

  • MySQL Shell が InnoDB クラスタ で使用するサーバーの構成に使用するプロビジョニングスクリプトには、Python へのアクセスが必要です。 Windows の場合、MySQL Shell には Python が含まれており、ユーザーの構成は必要ありません。 Unix では、Python はシェル環境の一部として検出される必要があります。 システムで Python が正しく構成されていることを確認するには、次のコマンドを発行します:

    $ /usr/bin/env python

    Python インタプリタが起動した場合、それ以上のアクションは必要ありません。 前述のコマンドが失敗した場合は、/usr/bin/python と選択した Python バイナリの間にソフトリンクを作成します。 詳細は、サポートされる言語を参照してください。

  • バージョン 8.0.17 からは、インスタンスは InnoDB クラスタ 内で一意の server_id を使用する必要があります。 Cluster.addInstance(instance) 操作を使用する場合、instanceserver_id がクラスタ内のインスタンスによってすでに使用されていると、操作はエラーで失敗します。

  • バージョン 8.0.23 からは、パラレルレプリケーションアプライヤを使用するようにインスタンスを構成する必要があります。 パラレルレプリケーションアプリケーションの構成を参照してください。

  • InnoDB クラスタ のインスタンスを構成するプロセス中に、インスタンスの使用に必要なシステム変数の大部分が構成されます。 ただし、AdminAPI では transaction_isolation システム変数は構成されません。つまり、REPEATABLE READ にデフォルト設定されます。 これは単一プライマリクラスタには影響しませんが、マルチプライマリクラスタを使用している場合は、アプリケーションで REPEATABLE READ セマンティクスに依存しないかぎり、READ COMMITTED 分離レベルを使用することをお薦めします。 グループレプリケーションの制限事項を参照してください。