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 クラスターボリュームにデータを保存できないためです。