Amazon RDS DB インスタンスでのストレージ不足時に発生する問題を解決するにはどうすればよいですか?

最終更新日: 2022 年 6 月 7 日

Amazon Relational Database Service (Amazon RDS) DB インスタンスでストレージが不足していて、インスタンスを停止すること、再起動すること、インスタンスに接続することができません。

簡単な説明

storage-full の状態を防ぐために、次の予防策の実施を検討してください。

解決方法

storage-full ステータスの Amazon RDS DB インスタンスには、インスタンスへの接続やインスタンスの再起動などの基本的な操作を実行するための十分な空き容量がありません。問題を解決するには、次の操作を実行します。

  1. DB インスタンスのステータスstorage-full であることを確認します。
  2. DB インスタンスの割り当てられたストレージを増やします
    注意: DB インスタンスが storage-full 状態の場合、インスタンスは割り当てられたストレージの変更のみを受け入れます。他の値に対する変更は拒否されます。
    注意: 割り当てられたストレージを少なくとも 10% 増やす必要があります。10% 未満の増加はエラーになります。

DB インスタンスが storage-optimization ステータスの場合、インスタンスは動作可能です。ただし、インスタンスでストレージの最適化が完了してから少なくとも 6 時間は他のストレージを変更できません。

ほとんどの場合、割り当てられたストレージを少し増やすと、インスタンスに再接続して追加のトラブルシューティングを実行できるようになります。Amazon RDS DB インスタンスが storage-full 状態でない場合、追加のトラブルシューティング手順については「Amazon RDS DB インスタンスに接続できない」を参照してください。

Amazon RDS for SQL Server

一部の DB インスタンスにはストレージを変更する際の制限事項があります。Amazon RDS コンソールで、DB インスタンスを変更できない場合、[割り当てられたストレージ] オプションは無効になります。ストレージ容量を変更するオプションが利用できない場合に Amazon RDS for SQL Server インスタンスのストレージをスケールするには、ネイティブバックアップおよび復元を使用してデータを移行します。または、データ移行ツールを使用して、プロビジョンド IOPS または汎用 (SSD) ストレージタイプの新しいインスタンスに移行します。詳細については、「Amazon RDS DB インスタンスを変更する」を参照してください。

有効なストレージオプションを返す以下の AWS コマンドラインインターフェイス (AWS CLI) コマンドを使用して、DB インスタンスが対象になるかどうかを確認できます。

describe-valid-db-instance-modifications

以下の操作を行うと、Amazon RDS for SQL Server インスタンスで使用されている領域を減らすことができます。

  • Amazon RDS インスタンスが storage full 状態になっている場合、または DB ログの容量を管理する場合は、DBCC SQLPERF(LOGSPACE) TSQL クエリを実行して、SQL Server Transaction Log の容量と、ログの領域使用量の割合を確認します。このクエリの詳細については、DBCC SQLPERF (Transact-SQL)に関する Microsoft ドキュメントを参照してください。トランザクションログの領域使用量の割合は低くても、そのログファイルのサイズが大きい場合は、トランザクションログファイルを縮小してディスク領域を復旧します。詳細については、「Microsoft SQL Server データベースエンジンを実行する DB インスタンスに接続する」を参照してください。
  • SQL Server の tempdb は、自動拡張が有効になると自動的に拡張します。利用可能なストレージが tempdb データベースによって大量に消費されている場合は、ベストプラクティスとして tempdb を圧縮します。
    maxsize に制限が指定されていない場合、tempdb は利用可能なストレージを消費します。