Amazon RDS からの推奨事項のリファレンス
Amazon RDS では、リソースが作成または変更されると、リソースの推奨事項が生成されます。次の表に、Amazon RDS からの推奨事項の例を示します。
型 | 説明 | 推奨事項 | ダウンタイムが必要 | 追加情報 |
---|---|---|---|---|
マグネティックボリュームが使用中です |
DB インスタンスはマグネティックストレージを使用しています。ほとんどの DB インスタンスには、マグネティックストレージは推奨されません。別のストレージタイプとして、汎用 (SSD) またはプロビジョンド IOPS を選択してください。 |
別のストレージタイプとして、汎用 (SSD) またはプロビジョンド IOPS を選択してください。 |
あり |
Amazon EC2 ドキュメントの旧世代のボリューム。 |
リソースの自動バックアップは無効になっています |
自動バックアップは DB インスタンスに対して有効ではありません。DB インスタンスのポイントインタイムリカバリを可能にするため、自動バックアップが推奨されます。 |
最大 14 日間の保存期間で自動バックアップを有効にします。 |
あり |
AWS データベースブログの「 Amazon RDS バックアップストレージコストの説明 |
エンジンのマイナーバージョンアップグレードが必要です |
データベースリソースで最新のマイナー DB エンジンバージョンが実行されていません。最新のマイナーバージョンには、最新のセキュリティ修正プログラムやその他の改善が含まれています。 |
最新のエンジンバージョンにアップグレードします。 |
あり |
|
拡張モニタリングは無効になっています |
データベースリソースでは拡張モニタリングが有効になっていません。拡張モニタリングにより、モニタリングとトラブルシューティングのためのリアルタイムのオペレーティングシステムメトリクスが提供されます。 |
Enhanced monitoring] を有効にします。 |
なし |
|
ストレージの暗号化は無効になっています。 |
Amazon RDS では、AWS Key Management Service (AWS KMS) で管理しているキーを使用して、すべてのデータベースエンジンの保存時の暗号化をサポートしています。Amazon RDS 暗号化を使用するアクティブな DB インスタンスでは、ストレージに保存されているデータは、自動バックアップ、リードレプリカ、スナップショットのように暗号化されます。 DB インスタンスの作成時に暗号化が有効になっていない場合は、暗号化を有効にする前に、DB インスタンスの復号化されたスナップショットの暗号化されたコピーを作成および復元する必要があります。 |
DB インスタンスの保管中のデータの暗号化を有効にします。 |
あり |
|
Performance Insights は無効になっている |
Performance Insights では、DB インスタンスの負荷をモニタリングし、データベースパフォーマンスの問題の分析と解決をサポートします。Performance Insights を有効にすることをお勧めします。 |
Performance Insights をオンにします。 |
なし |
|
DB インスタンスのストレージの自動スケーリングが無効になっている |
DB インスタンスのストレージ自動スケーリングが有効になっていません。RDS ストレージの自動スケーリングは、データベースのワークロードが増加したときに、ダウンタイムなしでストレージ容量を自動的にスケーリングします。 |
指定した最大ストレージしきい値で Amazon RDS ストレージ自動スケーリングを有効にします |
なし |
|
RDS リソースのメジャーバージョンの更新が必須 |
DB エンジンの、現行メジャーバージョンのデータベースはサポートされません。新しい機能や拡張機能を含む最新のメジャーバージョンにアップグレードすることをお勧めします。 |
DB エンジンを最新のメジャーバージョンにアップグレードします。 |
あり |
|
RDS リソースのインスタンスクラスの更新が必須 |
DB インスタンスは、旧世代の DB インスタンスクラスで実行されています。旧世代の DB インスタンスクラスは、コスト、パフォーマンス、またはその両方が向上した DB インスタンスクラスに置き換えられました。DB インスタンスには、新しい世代の DB インスタンスクラスを使用して実行することをお勧めします。 |
DB インスタンスクラスをアップグレードします。 |
あり |
|
ライセンス付きのサポート終了エンジンエディションを使用する RDS リソース |
現在のライセンスサポートを継続するには、メジャーバージョンを Amazon RDS がサポートする最新のエンジンバージョンにアップグレードすることをお勧めします。データベースのエンジンバージョンは、現在のライセンスではサポートされません。 |
ライセンスモデルを引き続き使用するには、データベースを Amazon RDS でサポートされている最新バージョンにアップグレードすることをお勧めします。 |
あり |
|
DB インスタンスがマルチ AZ 配置を使用していない |
マルチ AZ 配置を使用することをお勧めします。マルチ AZ 配置により、DB インスタンスの可用性と耐久性が向上します。 |
影響を受ける DB インスタンスにマルチ AZ を設定します。 |
なし この変更時にダウンタイムは発生しません。ただし、パフォーマンスに影響する可能性があります。詳細については、「Amazon RDS の DB インスタンスをマルチ AZ 配置に変換する」を参照してください。 |
|
DB のメモリパラメータがデフォルトと異なる |
DB インスタンスのメモリパラメータがデフォルト値と大きく異なります。これらの設定はパフォーマンスに影響が及び、エラーの原因となる可能性があります。 DB インスタンスのカスタムメモリパラメータを、DB パラメータグループのデフォルト値に再設定することをお勧めします。 |
メモリパラメータをデフォルト値にリセットします。 |
なし |
Amazon RDS for MySQL のパラメータを設定するためのベストプラクティス |
最適値未満を使用する |
変更バッファリングでは、MySQL DB インスタンスは、セカンダリインデックスを維持するために必要ないくつかの書き込みを延期することができます。この機能は、低速ディスクを使用する環境で有効でした。バッファリング設定を変更することで DB のパフォーマンスはわずかに向上しましたが、クラッシュリカバリの遅延やアップグレード中のシャットダウン時間の増加の原因となりました。 |
DB パラメータグループの |
なし |
Amazon RDS for MySQL のパラメータを設定するためのベストプラクティス |
Amazon RDS クエリキャッシュパラメータは有効になっている |
変更によってクエリキャッシュの削除が必要になった場合、DB インスタンスは停止しているように見えます。通常ワークロードでは、クエリキャッシュのメリットは得られません。クエリキャッシュは、MySQL バージョン 8.0 から削除されました。query_cache_type パラメータを 0 に設定することをお勧めします。 |
DB パラメータグループの |
あり |
Amazon RDS for MySQL のパラメータを設定するためのベストプラクティス |
|
|
DB パラメータグループの |
なし |
|
パラメータグループで huge pages が使用されない |
Large pages はデータベースのスケーラビリティを高めることができますが、DB インスタンスは Large pages を使用していません。DB インスタンスの DB パラメータグループで、 |
DB パラメータグループの |
あり |
|
|
DB インスタンスの自動バキュームパラメータは無効になっています。自動バキュームを無効にすると、テーブルとインデックスが肥大化し、パフォーマンスに影響します。 DB パラメータグループの自動バキュームを有効にすることをお勧めします。 |
DB パラメータグループの自動バキュームパラメータを有効にしてください。 |
なし |
AWS データベースブログの「Amazon RDS for PostgreSQL 環境における自動バキュームについて |
|
|
DB パラメータグループの |
あり |
AWS データベースブログの「 Amazon Aurora PostgreSQL パラメータ: データベースブログの「レプリケーション、セキュリティ、ログ記録 |
|
|
|
なし |
|
|
クエリプランナーまたはオプティマイザーは、インデックスのみのスキャン計画タイプが無効になっている場合は使用できません。
|
|
なし |
|
|
クエリプランナーまたはオプティマイザーは、インデックスのみのスキャン計画タイプが無効になっている場合は使用できません。
|
|
なし |
|
|
DB インスタンスの
|
|
なし |
Amazon RDS for MySQL のパラメータを設定するためのベストプラクティス |
|
DB インスタンスでトランザクションのコミットが確認される前には、バイナリログのディスクへの同期は実行されません。
|
|
なし |
AWS データベースブログのAmazon RDS for MySQL のレプリケーションパラメータを設定するためのベストプラクティス |
|
DB インスタンスは、InnoDB 統計をディスクに保持するように設定されていません。統計が保存されていない場合は、インスタンスが再起動してテーブルにアクセスするたびに再計算されます。これにより、クエリ実行プランにばらつきが生じます。このグローバルパラメータの値はテーブルレベルで変更できます。
|
|
なし |
Amazon RDS for MySQL のパラメータを設定するためのベストプラクティス |
|
お使いの DB インスタンスは、InnoDB が一度に開くことができる最大ファイル数の値が低くなっています。 |
|
あり |
|
|
DB インスタンスは、各データベースアカウントの最大同時接続数の値が低くなっています。
|
|
あり |
|
リードレプリカは書き込み可能モードで開かれている |
DB インスタンスには書き込み可能モードのリードレプリカがあり、クライアントからの更新が可能です。 リードレプリカが書き込み可能モードにならないように、 |
|
なし |
AWS データベースブログのAmazon RDS for MySQL のレプリケーションパラメータを設定するためのベストプラクティス |
|
DB インスタンスで既知の問題が発生しました: MySQL バージョン 8.0.26 よりも前のバージョンで、
|
|
なし |
|
|
DB インスタンスの一般ログ記録が有効になっています。この設定は、データベースの問題のトラブルシューティングに役立ちます。しかし、一般ログ記録を有効にすると、入出力操作の量と割り当てられるストレージ容量が増え、競合やパフォーマンスの低下につながる可能性があります。 一般ログ記録の使用状況の要件を確認してください。 |
一般ログ記録の使用状況の要件を確認してください。必須ではない場合は、 |
なし |
|
システムメモリ容量のプロビジョニングが不十分な RDS インスタンス |
メモリの使用量を減らすか、メモリの割り当て量の多い DB インスタンスタイプを使用するようにクエリを調整することをお勧めします。インスタンスのメモリが不足すると、データベースのパフォーマンスに影響を及ぼします。 |
メモリ容量のより高い DB インスタンスを使用する |
あり |
AWS データベースブログの「Amazon RDS インスタンスの垂直スケーリングと水平スケーリング |
システム CPU 容量のプロビジョニングが不十分な RDS インスタンス |
より少ないメモリを使用するようにクエリを調整するか、vCPU の割り当て量がより多い DB インスタンスを使用するように DB インスタンスを変更することをお勧めします。DB インスタンスの CPU が少なくなると、データベースのパフォーマンスが低下する可能性があります。 |
CPU 容量がより多い DB インスタンスを使用する |
あり |
AWS データベースブログの「Amazon RDS インスタンスの垂直スケーリングと水平スケーリング |
RDS リソースは接続プールを正しく利用していません。 |
Amazon RDS Proxy を有効にして、既存のデータベース接続を効率的にプールして共有することをお勧めします。データベースで既にプロキシを使用している場合は、複数の DB インスタンス間の接続プールと負荷分散を改善するようにプロキシを正しく設定します。RDS Proxy は、接続の枯渇やダウンタイムのリスクを軽減すると同時に、可用性とスケーラビリティを向上させるのに役立ちます。 |
RDS プロキシを有効にするか、既存のプロキシ設定を変更する |
なし |
AWS データベースブログの「Amazon RDS インスタンスの垂直スケーリングと水平スケーリング |
RDS インスタンスが過剰な一時オブジェクトを作成している |
ワークロードを調整して過剰な一時オブジェクトが作成されないようにするか、最適化された読み取りをサポートする RDS インスタンスクラスに切り替えることをお勧めします。RDS Optimized Reads は、多数の一時オブジェクトや大きな一時オブジェクトを含むワークロードのデータベースパフォーマンスを向上させます。ワークロードを評価し、インスタンスで RDS Optimized Reads を使用することで、データベースワークロードが改善されるかどうかを判断します。 |
RDS Optimized Reads で DB インスタンスタイプを使用する |
あり |
Amazon RDS Optimized Reads による RDS for MySQL のクエリパフォーマンスの向上 Amazon RDS Optimized Reads による RDS for MariaDB のクエリパフォーマンスの向上 Amazon RDS Optimized Reads による RDS for PostgreSQL のクエリパフォーマンスの向上 |
システム IOPS 容量のプロビジョニングが不十分な RDS インスタンス |
データベースワークロードを調整して IOPS を減らすか、デフォルトの IOPS 制限が高いタイプに DB インスタンスをスケールアップすることをお勧めします。現在の DB インスタンスではプロビジョンド IOPS をサポートできないか、データベースワークロードの IOPS 使用率が高くなっています。 |
より高い IOPS デフォルト制限を持つ DB インスタンスタイプを使用する |
あり |
|
RDS インスタンスにプロビジョニング不足の Amazon EBS ボリュームがある |
データベースワークロードを調整して IOPS を減らすか、データベースのプロビジョンド IOPS を増やすことをお勧めします。IOPS 使用率がプロビジョンド IOPS に近づくと、データベースのパフォーマンスが低下する可能性があります。 |
DB インスタンスにより多くの IOPS をプロビジョニングする |
あり |
|
RDS インスタンスのスループットキャパシティがプロビジョニング不足 |
データベースワークロードを調整してスループットを減らすか、データベースのプロビジョンドスループットを増やすことをお勧めします。スループット使用率がプロビジョニングされたスループットに近づくと、データベースのパフォーマンスに影響する可能性があります。 |
DB インスタンスにより多くのスループットをプロビジョニングする |
あり |
|
RDS インスタンスは EBS I/O のプロビジョニング不足 |
データベースワークロードを調整して I/O 操作を減らすか、Amazon RDS io2 Block Express ボリュームを使用するように DB インスタンスを変更することをお勧めします。このボリュームは、高パフォーマンス、高スループット、および低レイテンシーを必要とするデータベースワークロード用に設計されています。現在のワークロードでは、データベースは必要な速度で I/O 操作を処理できない可能性があり、パフォーマンスが低下する可能性があります。 |
RDS インスタンスに Amazon RDS io2 Block Express ボリュームを使用する |
なし |
Amazon RDS の Amazon CloudWatch メトリクス 「Amazon EBS ユーザーガイド」の「プロビジョンド IOPS SSD ボリューム」 |