MySQL 5.7 互換 Aurora MySQL バージョン 2 - Amazon Aurora

MySQL 5.7 互換 Aurora MySQL バージョン 2

このトピックでは、Aurora MySQL バージョン 2 と MySQL 5.7 コミュニティエディションの違いについて説明します。

Aurora MySQL バージョン 2 ではサポートされていない機能

次の機能は MySQL 5.7 ではサポートされていますが、現在、Aurora MySQL バージョン 2 ではサポートされていません。

  • CREATE TABLESPACE SQL ステートメント

  • グループのレプリケーションプラグイン

  • ページサイズの増加

  • 起動時の InnoDB バッファープールのロード

  • InnoDB フルテキストパーサープラグイン

  • マルチソースレプリケーション

  • オンラインバッファープールのサイズ変更

  • パスワード検証プラグイン – プラグインをインストールできますが、サポートされていません。プラグインをカスタマイズすることはできません。

  • クエリ書き換えプラグイン

  • レプリケーションフィルタリング

  • X プロトコル

これらの機能のの詳細については、MySQL 5.7 のドキュメントを参照してください。

Aurora MySQL バージョン 2 での一時テーブルスペースの動作

MySQL 5.7 では、一時テーブルスペースは自動的に拡張され、ディスク上の一時テーブルに対応できるように必要に応じてサイズが大きくなります。一時テーブルが削除されると、空いたスペースを新しい一時テーブルに再利用できますが、一時テーブルスペースは拡張されたサイズのままで縮小しません。一時テーブルスペースは、エンジンを再起動すると削除され、再作成されます。

Aurora MySQL バージョン 2 では、以下の動作が適用されます。

  • バージョン 2.10 以降で作成された新しい Aurora MySQL DB クラスターの場合、一時テーブルスペースは、データベースを再起動したときに削除され、再作成されます。これにより、動的なサイズ変更機能でストレージスペースを再利用できます。

  • 既存の Aurora MySQL DB クラスターを以下のようにアップグレードした場合:

    • バージョン 2.10 以上 - 一時テーブルスペースは、データベースを再起動したときに削除され、再作成されます。これにより、動的なサイズ変更機能でストレージスペースを再利用できます。

    • バージョン 2.09 — データベースを再起動しても、一時テーブルスペースは削除されません。

Aurora MySQL バージョン 2 の DB クラスターの一時テーブルスペースのサイズは、次のクエリを使用して確認できます。

SELECT FILE_NAME, TABLESPACE_NAME, ROUND((TOTAL_EXTENTS * EXTENT_SIZE) / 1024 / 1024 / 1024, 4) AS SIZE FROM INFORMATION_SCHEMA.FILES WHERE TABLESPACE_NAME = 'innodb_temporary';

詳細については、MySQL ドキュメントの「一時テーブルスペース」を参照してください。

オンディスク一時テーブルのストレージエンジン

Aurora MySQL バージョン 2 は、インスタンスのロールに応じて、オンディスク内部一時テーブルに異なるストレージエンジンを使用します。

  • ライターインスタンスでは、オンディスク一時テーブルはデフォルトで InnoDB ストレージエンジンを使用します。これらは Aurora クラスターボリュームの一時テーブルスペースに保存されます。

    DB パラメータ internal_tmp_disk_storage_engine の値を変更することで、ライターインスタンスのこの動作を変更できます。詳細については、「インスタンスレベルのパラメータ」を参照してください。

  • リーダーインスタンスでは、オンディスク一時テーブルはローカルストレージを使用する MyISAM ストレージエンジンを使用します。これは、読み取り専用インスタンスでは Aurora クラスターボリュームにデータを保存できないためです。