

# Amazon RDS での MariaDB 機能のサポート
<a name="MariaDB.Concepts.FeatureSupport"></a>

RDS for MariaDB は MariaDB のほとんどの特徴と機能をサポートしています。一部の機能には、制限付きのサポートまたは制限された特権があります。

[[What's New with Database?](https://aws.amazon.com/about-aws/whats-new/database/)] (データベースの新機能) ページで新しい Amazon RDS 機能をフィルタリングできます。[**製品**] で [**Amazon RDS**] を選択します。その後、**MariaDB 2023** などのキーワードを使用して検索します。

**注記**  
以下のリストは完全なものではありません。

Amazon RDS での MariaDB 機能のサポートの詳細については、以下のトピックを参照してください。

**トピック**
+ [Amazon RDS の MariaDB でサポートされているストレージエンジン](MariaDB.Concepts.Storage.md)
+ [Amazon RDS での MariaDB のキャッシュウォームアップ](MariaDB.Concepts.XtraDBCacheWarming.md)
+ [Amazon RDS でサポートされていない MariaDB の機能](MariaDB.Concepts.FeatureNonSupport.md)

## Amazon RDS for MariaDB のメジャーバージョンでの MariaDB 機能のサポート
<a name="MariaDB.Concepts.FeatureSupport.MajorVersions"></a>

次のセクションでは、Amazon RDS for MariaDB のメジャーバージョンでの MariaDB 機能のサポートに関する情報について説明しています。

**Topics**
+ [Amazon RDS での MariaDB 11.8 のサポート](#MariaDB.Concepts.FeatureSupport.11-8)
+ [Amazon RDS での MariaDB 11.4 のサポート](#MariaDB.Concepts.FeatureSupport.11-4)
+ [Amazon RDS での MariaDB 10.11 のサポート](#MariaDB.Concepts.FeatureSupport.10-11)
+ [Amazon RDS での MariaDB 10.6 のサポート](#MariaDB.Concepts.FeatureSupport.10-6)
+ [Amazon RDS での MariaDB 10.5 のサポート](#MariaDB.Concepts.FeatureSupport.10-5)
+ [Amazon RDS での MariaDB 10.4 のサポート](#MariaDB.Concepts.FeatureSupport.10-4)

Amazon RDS for MariaDB のサポートされているマイナーバージョンについては、「[Amazon RDS の MariaDB のバージョン](MariaDB.Concepts.VersionMgmt.md)」を参照してください。

### Amazon RDS での MariaDB 11.8 のサポート
<a name="MariaDB.Concepts.FeatureSupport.11-8"></a>

Amazon RDS は、MariaDB バージョン 11.8 以降を実行する DB インスタンスで以下の新しい機能をサポートしています。

**注記**  
MariaDB 11.8 では、`require_secure_transport` のデフォルト値は `1` になり、安全な SSL/TLS 接続が必要です。非セキュア接続が必要な場合は、`0` に設定します。
+ **パラメータの新しいデフォルト値** – `require_secure_transport` パラメータのデフォルト値が `0` から `1` に変更され、デフォルトで安全なトランスポート接続が強制されます。詳細については、「[Amazon RDS 上の MariaDB DB インスタンスへのすべての接続に SSL/TLS を要求する](mariadb-ssl-connections.require-ssl.md)」を参照してください。
+ **ベクトルサポート** – MariaDB Vector を使用して、AI で生成されたベクトルを MariaDB に直接保存および検索できます。この機能では、次のシステム変数が導入されています。
  + 変数 [https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_default_distance](https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_default_distance) は、MHNSW ベクトルインデックス作成のデフォルトの距離メトリクスを指定します。
  + 変数 [https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_default_m](https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_default_m) は、MHNSW ベクトルインデックス作成の `M` パラメータのデフォルト値を定義します。
  + 変数 [https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_ef_search](https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_ef_search) は、ベクトルインデックス検索の結果候補の最小数を定義します。
  + 変数 [https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_max_cache_size](https://mariadb.com/docs/server/reference/sql-structure/vectors/vector-system-variables#mhnsw_max_cache_size) は、1 つの MHNSW ベクトルインデックスキャッシュの上限を設定します。
+ **一時ファイルサイズ制限** – RDS Maria DB 11.8 パラメータグループで使用できる 2 つのシステム変数を使用して、作成されたディスク一時ファイルとテーブルのサイズを制限できるようになりました。
  + 変数 [https://mariadb.com/docs/server/security/limiting-size-of-created-disk-temporary-files-and-tables/max_tmp_session_space_usage-system-variable](https://mariadb.com/docs/server/security/limiting-size-of-created-disk-temporary-files-and-tables/max_tmp_session_space_usage-system-variable) は、ユーザーあたりの一時スペース許容量を制限します。
  + 変数 [https://mariadb.com/docs/server/security/limiting-size-of-created-disk-temporary-files-and-tables/max_tmp_total_space_usage-system-variable](https://mariadb.com/docs/server/security/limiting-size-of-created-disk-temporary-files-and-tables/max_tmp_total_space_usage-system-variable) は、すべてのユーザーの一時スペースの許容量を制限します。
+ **一時テーブルスペース管理** – 一時テーブルスペースは一時テーブルを保存し、データが追加されると拡大します。一時テーブルが削除されても、スペースは自動的に再利用されません。手順 [mysql.rds\$1execute\$1operation](mysql_rds_execute_operation.md) を使用して、一時テーブルスペースを縮小し、ディスク容量を再利用できます。

MariaDB 11.8 のすべての機能と関連ドキュメントのリストについては、MariaDB ウェブサイトで「[Changes and improvements in MariaDB 11.8](https://mariadb.com/kb/en/changes-improvements-in-mariadb-11-8/)」および「[Release notes - MariaDB 11.8 series](https://mariadb.com/kb/en/release-notes-mariadb-11-8-series/)」を参照してください。

サポートされない機能の一覧については、「[Amazon RDS でサポートされていない MariaDB の機能](MariaDB.Concepts.FeatureNonSupport.md)」を参照してください。

### Amazon RDS での MariaDB 11.4 のサポート
<a name="MariaDB.Concepts.FeatureSupport.11-4"></a>

Amazon RDS は、MariaDB バージョン 11.4 以降を実行する DB インスタンスで以下の新しい機能をサポートしています。
+ **暗号化ライブラリ** – RDS for MariaDB は OpenSSL を FIPS 140-3 認定の AWS Libcrypto (AWS-LC) に置き換えました。
+ **Simple Password Check プラグイン** – MariaDB の [Simple Password Check プラグイン](https://mariadb.com/kb/en/simple-password-check-plugin/)を使用して、パスワードに特定のタイプの文字が少なくとも特定の数だけ含まれているかどうかを確認できます。詳細については、「[RDS for MariaDB のパスワード検証プラグインの使用](MariaDB.Concepts.PasswordValidationPlugins.md)」を参照してください。
+ **Cracklib Password Check プラグイン** – MariaDB の [Cracklib Password Check プラグイン](https://mariadb.com/kb/en/cracklib-password-check-plugin/)を使用して、新しいパスワードの強度を確認できます。詳細については、「[RDS for MariaDB のパスワード検証プラグインの使用](MariaDB.Concepts.PasswordValidationPlugins.md)」を参照してください。
+ **InnoDB の機能強化** — これらの機能には、次の項目があります。
  + 変更バッファが削除されました。詳細については、「[InnoDB Change Buffering](https://mariadb.com/kb/en/innodb-change-buffering/)」を参照してください。
  + InnoDB デフラグが削除されました。詳細については、「[InnoDB Defragmentation](https://mariadb.com/kb/en/defragmenting-innodb-tablespaces/#innodb-defragmentation)」を参照してください。
+ **新しい権限** – 管理者ユーザーに `SHOW CREATE ROUTINE` 権限も付与されました。この権限により、被付与者は、他のユーザーが所有するルーチンの `SHOW CREATE` 定義ステートメントを表示できます。詳細については、「[Database Privileges](https://mariadb.com/kb/en/grant/#database-privileges)」を参照してください。
+ **レプリケーションの改善** – MariaDB バージョン 11.4 の DB インスタンスは、バイナリログのインデックス作成をサポートしています。バイナリログファイルごとに GTID インデックスを作成できます。これらのインデックスは、GTID の検索にかかる時間を短縮することで、レプリケーションのパフォーマンスを向上させます。詳細については、「[Binlog Indexing](https://mariadb.com/kb/en/gtid/#binlog-indexing)」を参照してください。
+ **廃止または削除されたパラメータ** — MariaDB バージョン 11.4 の DB インスタンスでは、以下のパラメータが廃止または削除されました。
  + `engine_condition_pushdown` を [optimizer\$1switch](https://mariadb.com/kb/en/optimizer-switch/) から削除
  + [innodb\$1change\$1buffer\$1max\$1size](https://mariadb.com/kb/en/innodb-system-variables/#innodb_change_buffer_max_size)
  + [innodb\$1defragment](https://mariadb.com/kb/en/innodb-system-variables/#innodb_defragment)
  + `TLSv1.0` と `TLSv1.1` を [tls\$1version](https://mariadb.com/kb/en/ssltls-system-variables/#tls_version) から削除
+ **パラメータの新しいデフォルト値** – [innodb\$1undo\$1tablespaces](https://mariadb.com/kb/en/innodb-system-variables/#innodb_undo_tablespaces) パラメータのデフォルト値が `0` から `3` に変更されました。
+ **パラメータの新しい有効な値** – MariaDB バージョン 11.4 の DB インスタンスでは、以下のパラメータに新しい有効な値が追加されました。
  + [binlog\$1row\$1image](https://mariadb.com/kb/en/replication-and-binary-log-system-variables/#binlog_row_image) パラメータの有効な値として `FULL_NODUP` が追加されました。
  + [OLD\$1MODE](https://mariadb.com/kb/en/old-mode/) パラメータの有効な値として `NO_NULL_COLLATION_IDS` が追加されました。
+ **新しいパラメータ** — MariaDB バージョン 11.4 の DB インスタンスでは、以下のパラメータが新しくなります。
  + [transaction\$1isolation](https://mariadb.com/kb/en/server-system-variables/#transaction_isolation) パラメータは [tx\$1isolation](https://mariadb.com/kb/en/server-system-variables/#tx_isolation) パラメータに置き換わります。
  + [transaction\$1read\$1only](https://mariadb.com/kb/en/server-system-variables/#transaction_read_only) パラメータは [tx\$1read\$1only](https://mariadb.com/kb/en/server-system-variables/#tx_read_only) パラメータに置き換わります。
  + [block\$1encryption\$1mode](https://mariadb.com/kb/en/server-system-variables/#block_encryption_mode) パラメータは、[AES\$1ENCRYPT()](https://mariadb.com/kb/en/aes_encrypt/) 関数と [AES\$1DECRYPT()](https://mariadb.com/kb/en/aes_decrypt/) 関数のデフォルトのブロック暗号化モードを定義します。
  + [character\$1set\$1collations](https://mariadb.com/kb/en/server-system-variables/#character_set_collations) は、文字セットのデフォルトの照合順序のオーバーライドを定義します。
  + [binlog\$1gtid\$1index](https://mariadb.com/kb/en/system-versioned-tables/#binlog_gtid_index)、[binlog\$1gtid\$1index\$1page\$1size](https://mariadb.com/kb/en/system-versioned-tables/#binlog_gtid_index_page_size)、[binlog\$1gtid\$1index\$1span\$1min](https://mariadb.com/kb/en/system-versioned-tables/#binlog_gtid_index_span_min) は、バイナリログの GTID インデックスのプロパティを定義します。詳細については、「[Binlog Indexing](https://mariadb.com/kb/en/gtid/#binlog-indexing)」を参照してください。

MariaDB 11.4 のすべての機能と関連ドキュメントのリストについては、MariaDB ウェブサイトで「[Changes and improvements in MariaDB 11.4](https://mariadb.com/kb/en/changes-improvements-in-mariadb-11-4/)」および「[Release notes - MariaDB 11.4 series](https://mariadb.com/kb/en/release-notes-mariadb-11-4-series/)」を参照してください。

サポートされない機能の一覧については、「[Amazon RDS でサポートされていない MariaDB の機能](MariaDB.Concepts.FeatureNonSupport.md)」を参照してください。

### Amazon RDS での MariaDB 10.11 のサポート
<a name="MariaDB.Concepts.FeatureSupport.10-11"></a>

Amazon RDS は、MariaDB バージョン 10.11 以降を実行する DB インスタンスで以下の新しい機能をサポートしています。
+ **パスワード再利用チェックプラグイン** — MariaDB パスワード再利用チェックプラグインを使用して、ユーザーがパスワードを再利用できないようにしたり、パスワードの保持期間を設定したりできます。詳細については、「[パスワード再利用チェックプラグイン](https://mariadb.com/kb/en/password-reuse-check-plugin/)」を参照してください。
+ **GRANT TO PUBLIC 認可** — サーバーにアクセスできるすべてのユーザーに、権限を付与できます。詳細については、「[GRANT TO PUBLIC](https://mariadb.com/kb/en/grant/#to-public)」を参照してください。
+ **SUPER と READ ONLY ADMIN 権限の分離** — 以前に SUPER 権限を持っていたユーザーも含め、すべてのユーザーから READ ONLY ADMIN 権限を削除できます。
+ **セキュリティ** — MariaDB クライアントのデフォルトとしてオプション `--ssl` を設定できるようになりました。MariaDB は、設定が正しくない場合でも SSL をサイレントに無効にすることがなくなりました。
+ **SQL コマンドと関数** — `SHOW ANALYZE FORMAT=JSON` コマンドと関数 `ROW_NUMBER`、`SFORMAT`、および `RANDOM_BYTES`、`SFORMAT` を使用して、文字列の書式設定を可能にできるようになりました。これはデフォルトで有効になっています。1 つのコマンドでパーティションをテーブルに、テーブルをパーティションに変換できます。`JSON_*()` 関数に関して他にもいくつかの改善点があります。`DES_ENCRYPT` と `DES_DECRYPT` 関数はバージョン 10.10 以降では廃止されました。詳細については、「[SFORMAT](https://mariadb.com/kb/en/sformat/)」を参照してください。
+ **InnoDB の機能強化** — これらの機能には、次の項目があります。
  + REDO ログのパフォーマンスが向上し、書き込みの増幅が減り、同時実行性が向上しました。
  + データディレクトリを再初期化しなくても、UNDO テーブルスペースを変更できるようになりました。この機能強化により、コントロールプレーンのオーバーヘッドが軽減されます。再起動は必要ですが、undo テーブルスペースを変更した後に再初期化する必要はありません。
  + `CHECK TABLE … EXTENDED` および内部での降順インデックスのサポート。
  + 一括挿入が改善されました。
+ **バイナリログの変更** — これらの変更には、次の項目があります。
  + 2 つのフェーズに `ALTER` のログを記録することにより、レプリケーションのレイテンシーを減少させます。`binlog_alter_two_phase` パラメータはデフォルトでは無効になっていますが、パラメータグループを通じて有効にできます。
  + `explicit_defaults_for_timestamp` のログ記録。
  + トランザクションを安全にロールバックできる場合、`INCIDENT_EVENT` のログ記録は行われなくなりました。
+ **レプリケーション**の**改善** — MariaDB バージョン 10.11 DB インスタンスは、デフォルトで GTID レプリケーションを使用します (マスターがサポートしている場合)。また、`Seconds_Behind_Master` はより正確です。
+ **クライアント** — `mysqlbinglog` および `mariadb-dump` の新しいコマンドラインオプションを使用できます。`mariadb-dump` を使用して、履歴データをダンプして復元できます。
+ **システムバージョン管理** — 履歴を変更できます。MariaDB は自動的に新しいパーティションを作成します。
+ **アトミック DDL** — `CREATE OR REPLACE` がアトミックになりました。ステートメントは連続するか、完全に反転するかのどちらかです。
+ **ログの書き込みをやり直す** — ログの書き込みを非同期でやり直します。
+ **ストアド関数** — ストアド関数が、ストアドプロシージャと同じ`IN`、`OUT`、と `INOUT` パラメータをサポートするようになりました。
+ **非推奨または削除されたパラメータ** — 次のパラメータは、MariaDB バージョン 10.11 DB インスタンスに対して廃止または削除されました。
  + [innodb\$1change\$1buffering](https://mariadb.com/kb/en/innodb-system-variables/#innodb_change_buffering)
  + [innodb\$1disallow\$1writes](https://mariadb.com/kb/en/innodb-system-variables/#innodb_disallow_writes)
  + [innodb\$1log\$1write\$1ahead\$1size](https://mariadb.com/kb/en/innodb-system-variables/#innodb_log_write_ahead_size) 
  + [ innodb\$1prefix\$1index\$1cluster\$1optimization](https://mariadb.com/kb/en/innodb-system-variables/#innodb_prefix_index_cluster_optimization)
  + [ keep\$1files\$1on\$1create](https://mariadb.com/kb/en/server-system-variables/#keep_files_on_create)
  + [old](https://mariadb.com/kb/en/server-system-variables/#old)
+ **ダイナミックパラメータ** — 次のパラメータには、MariaDB バージョン 10.11 DB インスタンスに対して動的になりました。
  + [innodb\$1log\$1file\$1size](https://mariadb.com/kb/en/innodb-system-variables/#innodb_log_file_size)
  + [innodb\$1write\$1io\$1threads](https://mariadb.com/kb/en/innodb-system-variables/#innodb_write_io_threads)
  + [innodb\$1read\$1io\$1threads](https://mariadb.com/kb/en/innodb-system-variables/#innodb_read_io_threads)
+ **パラメータの新しいデフォルト値** – 次のパラメータには、MariaDB バージョン 10.11 DB インスタンスの新しいデフォルト値があります。
  + [explicit\$1defaults\$1for\$1timestamp](https://mariadb.com/kb/en/server-system-variables/#explicit_defaults_for_timestamp) パラメータのデフォルト値が、`OFF` から `ON` に変更されました。
  + [optimizer\$1prune\$1level](https://mariadb.com/kb/en/server-system-variables/#optimizer_prune_level) パラメータのデフォルト値が、`1` から `2` に変更されました。
+ **パラメータの新しい有効値** – 次のパラメータには、MariaDB バージョン 10.11 DB インスタンスの新しい有効値があります。
  + [old](https://mariadb.com/kb/en/server-system-variables/#old) パラメータの有効値が、[old\$1mode](https://mariadb.com/kb/en/server-system-variables/#old_mode) パラメータの有効値に統合されました。
  + [histogram\$1type](https://mariadb.com/kb/en/server-system-variables/#histogram_type) パラメータの有効値に、`JSON_HB` が含まれるようになりました。
  + [innodb\$1log\$1buffer\$1size](https://mariadb.com/kb/en/innodb-system-variables/#innodb_log_buffer_size) パラメータの有効値の範囲が、`262144` から `4294967295` (256 キロバイトから 4096 メガバイト) になりました。
  + [innodb\$1log\$1file\$1size](https://mariadb.com/kb/en/innodb-system-variables/#innodb_log_file_size) パラメータの有効値の範囲が、`4194304` から `512GB` (4 メガバイトから 512 ギガバイト) になりました。
  + [optimizer\$1prune\$1level](https://mariadb.com/kb/en/server-system-variables/#optimizer_prune_level) パラメータの有効値に、`2` が含まれるようになりました。
+ **新しいパラメータ** — 次のパラメータには、MariaDB バージョン 10.11 DB インスタンスに対して新しくなりました。
  + [binlog\$1alter\$1two\$1phase](https://mariadb.com/kb/en/replication-and-binary-log-system-variables//#binlog_alter_two_phase) パラメータは、レプリケーションパフォーマンスを改善できます。
  + [log\$1slow\$1min\$1examined\$1row\$1limit](https://mariadb.com/kb/en/server-system-variables/#log_slow_min_examined_row_limit) は、パフォーマンスを改善できます。
  + [log\$1slow\$1query](https://mariadb.com/kb/en/server-system-variables/#log_slow_query) パラメータと [log\$1slow\$1query\$1file](https://mariadb.com/kb/en/server-system-variables/#log_slow_query_file) パラメータは、`slow_query_log` と `slow_query_log_file` それぞれのエイリアスです。
  +  [ optimizer\$1extra\$1pruning\$1depth](https://mariadb.com/kb/en/server-system-variables/#optimizer_extra_pruning_depth)
  + [system\$1versioning\$1insert\$1history](https://mariadb.com/kb/en/system-versioned-tables/#system_versioning_insert_history)

MariaDB 10.11 のすべての機能と関連ドキュメントのリストについては、MariaDB ウェブサイトで「[Changes and improvements in MariaDB 10.11](https://mariadb.com/kb/en/changes-improvements-in-mariadb-1011/)」および「[Release notes - MariaDB 10.11 series](https://mariadb.com/kb/en/release-notes-mariadb-1011-series/)」を参照してください。

サポートされない機能の一覧については、「[Amazon RDS でサポートされていない MariaDB の機能](MariaDB.Concepts.FeatureNonSupport.md)」を参照してください。

### Amazon RDS での MariaDB 10.6 のサポート
<a name="MariaDB.Concepts.FeatureSupport.10-6"></a>

Amazon RDS は、MariaDB バージョン 10.6 以降を実行する DB インスタンスで以下の新しい機能をサポートしています。
+ **MyRocks ストレージエンジン** – MyRocks ストレージエンジンを RDS for MariaDB とともに使用して、書き込み負荷の高い高性能ウェブアプリケーションのストレージ消費を最適化できます。詳細については、「[Amazon RDS の MariaDB でサポートされているストレージエンジン](MariaDB.Concepts.Storage.md)」と「[MyRocks](https://mariadb.com/kb/en/myrocks/)」を参照してください。
+ **AWS Identity and Access ManagementIAM DB authentication** (IAM データベース認証) – IAM DB 認証を使用して、MariaDB DB インスタンスへの接続のセキュリティを強化し、一元管理できます。詳細については、「[MariaDB、MySQL、および PostgreSQL の IAM データベース認証](UsingWithRDS.IAMDBAuth.md)」を参照してください。
+ **アップグレードオプション** – 以前のメジャーリリース (10.3、10.4、10.5) から RDS for MariaDB バージョン 10.6 にアップグレードできるようになりました。既存の MySQL 5.6 または 5.7 DB インスタンスのスナップショットを MariaDB 10.6 インスタンスに復元することもできます。(詳しくは、「[MariaDB DB エンジンのアップグレード](USER_UpgradeDBInstance.MariaDB.md)」を参照してください。)
+ **レプリケーションの遅延** – リードレプリカがソースデータベースより遅延する時間を設定できるようになりました。標準の MariaDB レプリケーション設定では、ソースとレプリカ間のレプリケーション遅延は最小限に抑えられます。レプリケーションの遅延では、災害対策用の戦略として意図的に遅延を設定できます。詳細については、「[MariaDB での遅延レプリケーションの設定](USER_MariaDB.Replication.ReadReplicas.DelayReplication.md)」を参照してください。
+ **Oracle PL/SQL の互換性** – RDS for MariaDB バージョン 10.6 を使用すると、レガシー Oracle アプリケーションを Amazon RDS にさらに簡単に移行できます。詳細については、「[SQL\$1MODE=ORACLE](https://mariadb.com/kb/en/sql_modeoracle/)」を参照してください。
+ **アトミック DDL** – RDS for MariaDB バージョン 10.6 では、動的データ言語 (DDL) ステートメントは比較的クラッシュセーフです。`CREATE TABLE`、`ALTER TABLE`、`RENAME TABLE`、`DROP TABLE`、`DROP DATABASE`、および関連する DDL ステートメントがアトミックになりました。ステートメントは連続するか、完全に反転するかのどちらかです。詳細については、「[Atomic DDL](https://mariadb.com/kb/en/atomic-ddl/)」(アトミック DDL) を参照してください。
+ **その他の機能強化** – SQL 内で JSON データをリレーショナル形式に変換する `JSON_TABLE` 関数や、Innodb による空のテーブルデータのロードの高速化などの機能強化が行われました。また、分析とトラブルシューティングのための新しい `sys_schema`、未使用のインデックスを無視するためのオプティマイザの機能強化、およびパフォーマンスの向上も行いました。詳細については、「[JSON\$1TABLE](https://mariadb.com/kb/en/json_table/)」を参照してください。
+ **パラメータの新しいデフォルト値** – 次のパラメータには、MariaDB バージョン 10.6 DB インスタンスの新しいデフォルト値があります。
  + 次のパラメータのデフォルト値が `utf8` から `utf8mb3` に変更されました。
    + [character\$1set\$1client](https://mariadb.com/kb/en/server-system-variables/#character_set_client)
    + [character\$1set\$1connection](https://mariadb.com/kb/en/server-system-variables/#character_set_connection)
    + [character\$1set\$1results](https://mariadb.com/kb/en/server-system-variables/#character_set_results)
    + [character\$1set\$1system](https://mariadb.com/kb/en/server-system-variables/#character_set_system)

    これらのパラメータのデフォルト値は変更されていますが、機能の変更はありません。詳細については、MariaDB ドキュメントの「[Supported Character Sets and Collations](https://mariadb.com/kb/en/supported-character-sets-and-collations/)」(サポートされている文字セットと照合順序) を参照してください。
  + [collation\$1connection](https://mariadb.com/kb/en/server-system-variables/#collation_connection) パラメータのデフォルト値が `utf8_general_ci` から `utf8mb3_general_ci` に変更されました。このパラメータのデフォルト値は変更されていますが、機能の変更はありません。
  + [old\$1mode](https://mariadb.com/kb/en/server-system-variables/#old_mode) パラメータのデフォルト値が未設定から `UTF8_IS_UTF8MB3` に変更されました。このパラメータのデフォルト値は変更されていますが、機能の変更はありません。

MariaDB 10.6 のすべての機能と関連ドキュメントのリストについては、MariaDB ウェブサイトで「[Changes and improvements in MariaDB 10.6](https://mariadb.com/kb/en/changes-improvements-in-mariadb-106/)」(MariaDB 10.6 の変更点と改善点) および「[Release notes - MariaDB 10.6 series](https://mariadb.com/kb/en/release-notes-mariadb-106-series/)」(リリースノート - MariaDB 10.6 シリーズ) を参照してください。

サポートされない機能の一覧については、「[Amazon RDS でサポートされていない MariaDB の機能](MariaDB.Concepts.FeatureNonSupport.md)」を参照してください。

### Amazon RDS での MariaDB 10.5 のサポート
<a name="MariaDB.Concepts.FeatureSupport.10-5"></a>

Amazon RDS は、MariaDB バージョン 10.5 以降を実行する DB インスタンスで以下の新しい機能をサポートしています。
+ **InnoDB の強化 ** - MariaDB バージョン 10.5 には、InnoDB の機能強化が含まれています。詳細については、MariaDB ドキュメントの「[ InnoDB: パフォーマンスの改善など](https://mariadb.com/kb/en/changes-improvements-in-mariadb-105/#innodb-performance-improvements-etc)」を参照してください。
+ **Performance Schemaの更新** - MariaDB バージョン 10.5 には、Performance Schemaの更新が含まれています。詳細については、MariaDB ドキュメントの「[MySQL 5.7 インストルメンテーションとテーブルと一致する Performance Schema の更新](https://mariadb.com/kb/en/changes-improvements-in-mariadb-105/#performance-schema-updates-to-match-mysql-57-instrumentation-and-tables)」を参照してください。
+ **InnoDB 再実行ログ内の 1 つのファイル ** - MariaDB のバージョン 10.5 より前のバージョンでは、`innodb_log_files_in_group` パラメータの値が `2` に設定されていました。MariaDB バージョン 10.5 では、このパラメータの値は `1` に設定されます。

  以前のバージョンから MariaDB バージョン 10.5 にアップグレードし、パラメータを変更しない場合、`innodb_log_file_size` パラメータ値は変更されません。ただし、2 つのログファイルではなく 1 つのログファイルに適用されます。その結果、アップグレードされた MariaDB バージョン 10.5 DB インスタンスは、アップグレード前に使用していた再実行ログサイズの半分を使用します。この変更は、パフォーマンスに顕著な影響を与える可能性があります。この問題に対処するには、`innodb_log_file_size` パラメータの値を 2 倍にします。パラメータの変更については、「[Amazon RDS の DB パラメータグループのパラメータの変更](USER_WorkingWithParamGroups.Modifying.md)」を参照してください。
+ **SHOW SLAVE STATUS コマンドはサポートされていません**。- MariaDB のバージョン 10.5 より前のバージョンでは、`SHOW SLAVE STATUS`コマンドに `REPLICATION SLAVE` 特権が必要でした。MariaDB バージョン 10.5 では、同等の `SHOW REPLICA STATUS` コマンドに `REPLICATION REPLICA ADMIN` 権限が必要です。この新しい特権は RDS マスターユーザーに付与されません。

  `SHOW REPLICA STATUS` コマンドを使用する代わりに、新しい `mysql.rds_replica_status` 保存済み手順を実行して、同様の情報を返します。詳細については、「[mysql.rds\$1replica\$1status](mysql_rds_replica_status.md)」を参照してください。
+ **SHOW RELAYLOG EVENTS コマンドはサポートされていません**。-MariaDB のバージョン 10.5 より前のバージョンでは、`SHOW RELAYLOG EVENTS` コマンドには `REPLICATION SLAVE` 特権が必要でした。MariaDB バージョン 10.5 では、このコマンドには `REPLICATION REPLICA ADMIN` 特権が必要です。この新しい特権は RDS マスターユーザーに付与されません。
+ **パラメータの新しいデフォルト値** - 次のパラメータには、MariaDB バージョン 10.5 DB インスタンスの新しいデフォルト値があります。
  + [max\$1connections](https://mariadb.com/kb/en/server-system-variables/#max_connections) パラメータのデフォルト値が `LEAST({DBInstanceClassMemory/25165760},12000)` に変更されました。`LEAST`パラメータ関数の詳細については、「[DB パラメータ関数](USER_ParamValuesRef.md#USER_ParamFunctions)」を参照してください。
  + [innodb\$1adaptive\$1hash\$1index](https://mariadb.com/kb/en/innodb-system-variables/#innodb_adaptive_hash_index) パラメータのデフォルト値が `OFF` (`0`) に変更されました。
  + [innodb\$1checksum\$1algorythm](https://mariadb.com/kb/en/innodb-system-variables/#innodb_checksum_algorithm)のパラメータのデフォルト値が `full_crc32` に変更されました。
  + [innodb\$1log\$1file\$1size](https://mariadb.com/kb/en/innodb-system-variables/#innodb_log_file_size) パラメータのデフォルト値が 2 GB に変更されました。

MariaDB 10.5 のすべての機能と関連ドキュメントのリストについては、MariaDB ウェブサイトで「[MariaDB 10.5 の変更点と改善点](https://mariadb.com/kb/en/changes-improvements-in-mariadb-105/)」および「[リリースノート - MariaDB 10.5 シリーズ](https://mariadb.com/kb/en/release-notes-mariadb-105-series/)」を参照してください。

サポートされない機能の一覧については、「[Amazon RDS でサポートされていない MariaDB の機能](MariaDB.Concepts.FeatureNonSupport.md)」を参照してください。

### Amazon RDS での MariaDB 10.4 のサポート
<a name="MariaDB.Concepts.FeatureSupport.10-4"></a>

Amazon RDS は、MariaDB バージョン 10.4 以降を実行する DB インスタンスで以下の新しい機能をサポートしています。
+ **ユーザーアカウントのセキュリティの強化** - [パスワードの有効期限](https://mariadb.com/kb/en/user-password-expiry/)と[アカウントのロック](https://mariadb.com/kb/en/account-locking/)の改善
+ **オプティマイザの機能強化** - [オプティマイザのトレース機能](https://mariadb.com/kb/en/optimizer-trace-overview/)
+ **InnoDB の機能強化 ** - [インスタント DROP COLUMN のサポート](https://mariadb.com/kb/en/alter-table/#drop-column)と `VARCHAR` および `ROW_FORMAT=DYNAMIC` に対する `ROW_FORMAT=COMPACT` のエクステンション 
+ **新しいパラメータ** - [tcp\$1nodedelay](https://mariadb.com/kb/en/server-system-variables/#tcp_nodelay)、[tls\$1version](https://mariadb.com/kb/en/ssltls-system-variables/#tls_version)、および [gtid\$1cleanup\$1batch\$1size](https://mariadb.com/kb/en/gtid/#gtid_cleanup_batch_size) を含む

MariaDB 10.4 のすべての機能と関連ドキュメントのリストについては、MariaDB ウェブサイトで「[MariaDB 10.4 の変更点と改善点](https://mariadb.com/kb/en/library/changes-improvements-in-mariadb-104/)」および「[リリースノート - MariaDB 10.4 シリーズ](https://mariadb.com/kb/en/library/release-notes-mariadb-104-series/)」を参照してください。

サポートされない機能の一覧については、「[Amazon RDS でサポートされていない MariaDB の機能](MariaDB.Concepts.FeatureNonSupport.md)」を参照してください。

# Amazon RDS の MariaDB でサポートされているストレージエンジン
<a name="MariaDB.Concepts.Storage"></a>

RDS for MariaDB では、次のストレージエンジンがサポートされています。

**Topics**
+ [InnoDB ストレージエンジン](#MariaDB.Concepts.Storage.InnoDB)
+ [MyRocks ストレージエンジン](#MariaDB.Concepts.Storage.MyRocks)

他のストレージエンジンは現在、RDS for MariaDB ではサポートされていません。

## InnoDB ストレージエンジン
<a name="MariaDB.Concepts.Storage.InnoDB"></a>

MariaDB では様々な機能を持つ複数のストレージエンジンがサポートされていますが、それらすべてがリカバリとデータ耐久性に最適化されているわけではありません。InnoDB は、Amazon RDS での MariaDB DB インスタンスについて推奨されているストレージエンジンです。Amazon RDS でのポイントインタイムの復元やスナップショット復元などの機能には、回復可能なストレージエンジンが必要であり、MariaDB バージョンで推奨された ストレージエンジンのみがサポートされています。

詳細については、「[InnoDB](https://mariadb.com/kb/en/innodb/)」を参照してください。

## MyRocks ストレージエンジン
<a name="MariaDB.Concepts.Storage.MyRocks"></a>

MyRocks ストレージエンジンは RDS で MariaDB バージョン 10.6 以降で使用可能です。MyRocks ストレージエンジンを本番データベースで使用する前に、徹底したベンチマークとテストを実行して、ユースケースに対する InnoDB の潜在的な利点を検証することをお勧めします。

MariaDB バージョン 10.6 のデフォルトのパラメータグループには MyRocks パラメータが含まれています。詳細については、「[MariaDB のパラメータ](Appendix.MariaDB.Parameters.md)」および「[Amazon RDS のパラメータグループ](USER_WorkingWithParamGroups.md)」を参照してください。

MyRocks ストレージエンジンを使用するテーブルを作成するには、`CREATE TABLE` ステートメントに `ENGINE=RocksDB` を指定します。次の例では、MyRocks ストレージエンジンを使用するテーブルを作成します。

```
CREATE TABLE test (a INT NOT NULL, b CHAR(10)) ENGINE=RocksDB;
```

InnoDB テーブルと MyRocks テーブルの両方にまたがるトランザクションを実行しないことを強くお勧めします。MariaDB は、ストレージエンジン間のトランザクションに対して ACID (不可分性、整合性、分離性、耐久性) を保証するものではありません。DB インスタンスに InnoDB テーブルと MyRocks テーブルの両方を含めることは可能ですが、一方のストレージエンジンから別のストレージエンジンへの移行中を除き、この方法はお勧めしません。InnoDB テーブルと MyRocks テーブルの両方が DB インスタンスに存在する場合、各ストレージエンジンには独自のバッファプールがあり、パフォーマンスが低下する可能性があります。

MyRocks では `SERIALIZABLE` アイソレーションまたはギャップロックはサポートされていません。したがって、一般的に MyRocks をステートメントベースのレプリケーションで使用することはできません。詳細については、「[MyRocks and Replication](https://mariadb.com/kb/en/myrocks-and-replication/)」(MyRocks とレプリケーション) を参照してください。

現在、次の MyRocks パラメータのみ変更できます。
+ [https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_block_cache_size](https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_block_cache_size)
+ [https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_bulk_load](https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_bulk_load)
+ [https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_bulk_load_size](https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_bulk_load_size)
+ [https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_deadlock_detect](https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_deadlock_detect)
+ [https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_deadlock_detect_depth](https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_deadlock_detect_depth)
+ [https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_max_latest_deadlocks](https://mariadb.com/kb/en/myrocks-system-variables/#rocksdb_max_latest_deadlocks)

MyRocks ストレージエンジンと InnoDB ストレージエンジンは、`rocksdb_block_cache_size` および `innodb_buffer_pool_size` パラメータの設定により競合する可能性があります。場合によっては、特定の DB インスタンスで MyRocks ストレージエンジンのみを使用したいことがあります。その場合は、`innodb_buffer_pool_size minimal` パラメータを最小値に設定し、`rocksdb_block_cache_size` をできる限り高く設定することをお勧めします。

[https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBLogFiles.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBLogFiles.html) および [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DownloadDBLogFilePortion.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DownloadDBLogFilePortion.html) オペレーションを使用して MyRocks ログファイルにアクセスできます。

MyRocks の詳細については、MariaDB のウェブサイトの「[MyRocks](https://mariadb.com/kb/en/myrocks/)」を参照してください。

# Amazon RDS での MariaDB のキャッシュウォームアップ
<a name="MariaDB.Concepts.XtraDBCacheWarming"></a>

InnoDB キャッシュウォームアップでは、DB インスタンスがシャットダウンされたときのバッファプールの最新の状態を保存し、DB インスタンスが起動されたときに保存された情報からバッファプールを再ロードすることによって、MariaDB DB インスタンスのパフォーマンスを向上させることができます。このアプローチにより、通常のデータベースの使用からバッファプールを「ウォームアップする」必要がなくなり、既知の一般的なクエリのページを使用してバッファプールを事前にロードします。キャッシュウォームアップの詳細については、MariaDB ドキュメントの「[バッファプールのダンプと復元](http://mariadb.com/kb/en/mariadb/xtradbinnodb-buffer-pool/#dumping-and-restoring-the-buffer-pool)」を参照してください。

MariaDB 10.3 以上の DB インスタンスでは、キャッシュウォームアップはデフォルトで有効になっています。有効にするには、DB インスタンスのパラメータグループで `innodb_buffer_pool_dump_at_shutdown` および `innodb_buffer_pool_load_at_startup` パラメータを 1 に設定します。パラメータグループのこれらのパラメータ値を変更すると、パラメータグループを使用するすべての MariaDB DB インスタンスに影響します。特定の MariaDB DB インスタンスの キャッシュウォームアップを有効にするには、それらの DB インスタンスの新しいパラメータグループを作成することが必要になる場合があります。パラメータグループについては、「[Amazon RDS のパラメータグループ](USER_WorkingWithParamGroups.md)」を参照してください。

キャッシュウォームアップは、主に、スタンダードストレージを使用する DB インスタンスにパフォーマンス上のメリットをもたらします。PIOPS ストレージを使用する場合、一般的に大きなパフォーマンス上のメリットは見られません。

**重要**  
フェイルオーバー時など、MariaDB DB インスタンスが正常にシャットダウンしなかった場合、バッファプールの状態はディスクに保存されません。この場合、DB インスタンスが再開されるときに、MariaDB は利用可能なバッファプールファイルをロードします。特に害はありませんが、復元済みバッファプールは、再起動前のバッファプールの最新の状態を反映していない可能性があります。スタートアップ時に キャッシュをウォームアップするために、バッファプールの最新の状態を利用できるように、定期的に「オンデマンド」でバッファプールをダンプすることをお勧めします。バッファプールをオンデマンドでダンプまたはロードできます。  
自動で定期的にバッファプールをダンプするイベントを作成できます。例えば、次のステートメントは、1 時間ごとにバッファプールをダンプする `periodic_buffer_pool_dump` という名前のイベントを作成します。  

```
1. CREATE EVENT periodic_buffer_pool_dump 
2.    ON SCHEDULE EVERY 1 HOUR 
3.    DO CALL mysql.rds_innodb_buffer_pool_dump_now();
```
詳細については、MariaDB のドキュメントの「[イベント](http://mariadb.com/kb/en/mariadb/stored-programs-and-views-events/)」を参照してください。

## オンデマンドでのバッファプールのダンプとロード
<a name="MariaDB.Concepts.XtraDBCacheWarming.OnDemand"></a>

次のストアドプロシージャを使用して、 キャッシュをオンデマンドで格納しロードできます。
+ バッファプールの現在の状態をディスクにダンプするには、[mysql.rds\$1innodb\$1buffer\$1pool\$1dump\$1now](mysql-stored-proc-warming.md#mysql_rds_innodb_buffer_pool_dump_now) ストアドプロシージャを呼び出します。
+ バッファプールの保存された状態をディスクからロードするには、[mysql.rds\$1innodb\$1buffer\$1pool\$1load\$1now](mysql-stored-proc-warming.md#mysql_rds_innodb_buffer_pool_load_now) ストアドプロシージャを呼び出します。
+ 進行中のロードオペレーションをキャンセルするには、[mysql.rds\$1innodb\$1buffer\$1pool\$1load\$1abort](mysql-stored-proc-warming.md#mysql_rds_innodb_buffer_pool_load_abort) ストアドプロシージャを呼び出します。

# Amazon RDS でサポートされていない MariaDB の機能
<a name="MariaDB.Concepts.FeatureNonSupport"></a>

以下の MariaDB 機能は、Amazon RDS ではサポートされていません。
+ S3 ストレージエンジン
+ 認証用プラグイン - GSSAPI
+ 認証用プラグイン - Unix ソケット
+ AWS Key Management 暗号化プラグイン
+ 10.6 より前のバージョンの MariaDB の遅延レプリケーション
+ InnoDB および Aria で保管時のネイティブ MariaDB 暗号化

  MariaDB DB インスタンス用に保管時の暗号化を有効にするには、「[Amazon RDS リソースの暗号化](Overview.Encryption.md)」の指示に従います。
+ HandlerSocket
+ 10.6 より前のバージョンの MariaDB の JSON テーブルタイプ
+ MariaDB ColumnStore
+ MariaDB Galera クラスター
+ マルチ出典レプリケーション
+ 10.6 より前のバージョンの MariaDB の MyRocks ストレージエンジン
+ 11.4 より前のバージョンの MariaDB のパスワード検証プラグイン `simple_password_check` および `cracklib_password_check` 
+ Spider ストレージエンジン
+ Sphinx ストレージエンジン
+ TokuDB ストレージエンジン
+ MariaDB ドキュメントの「[エンジン定義の新しいテーブル/フィールド/インデックス属性](http://mariadb.com/kb/en/mariadb/engine-defined-new-tablefieldindex-attributes/)」で説明されている、ストレージエンジン固有のオブジェクト属性。
+ テーブルとテーブルスペースの暗号化
+ Hashicorp Key Management プラグイン
+ 2 つのアップグレードを平行実行

マネージド型サービスの操作性を実現するために、Amazon RDS では DB インスタンスへのシェルアクセスはできません。また、上位の権限を必要とする特定のシステムプロシージャやシステムテーブルへのアクセスが制限されます。Amazon RDS は、任意のスタンダード SQL クライアントアプリケーションによる、DB インスタンス上のデータベースへのアクセスがサポートされています。Amazon RDS では、Telnet、Secure Shell (SSH)、または Windows のリモートデスクトップ接続を使用しての、DB インスタンスに対するダイレクトホストアクセスは行えません。