MySQL エンジンで実行されている Amazon RDS データベースインスタンスが想定よりも多くの領域を使用しています。この余分な領域が使用されている理由、RDS MySQL DB インスタンスに割り当てられたディスクストレージの使用を最適化する方法を教えてください。

Amazon CloudWatch メトリックス「FreeStorageSpace」を使用して、特定の RDS DB インスタンスに利用可能なストレージ領域をモニタリングできますが、FreeStorageSpace では、MySQL エンジンによる利用可能なストレージの消費状況はわかりません。

利用可能なストレージの使用を最適化する前に、MySQL エンジンがストレージを使用する方法を知っていると便利です。MySQL エンジンのストレージは大まかに以下のカテゴリを使用して定義されています。

個々のデータベースによって使用されるストレージの合計は、以下のクエリを使用してわかります。

SELECT table_schema, SUM(data_length + index_length)/1024/1024 AS total_mb, SUM(data_length)/1024/1024 AS data_mb, SUM(index_length)/1024/1024 AS index_mb, COUNT(*) AS tables, CURDATE() AS today FROM information_schema.tables
GROUP BY table_schema ORDER BY 2 DESC;

サンプルの結果:

MySQLoutput1

RDS MySQL の DB インスタンスで最大のアプリケーションテーブルを見つけるには、以下のクエリを実行します。

SELECT table_schema, table_name, (data_length + index_length)/1024/1024 AS total_mb, (data_length)/1024/1024 AS data_mb, (index_length)/1024/1024 AS index_mb, CURDATE() AS today FROM information_schema.tables ORDER BY 3 DESC;

サンプルの結果:

MySQLoutput2

リードレプリカを追加すると、マスターインスタンスのバイナリログで追加のストレージが使用されるようになります。Amazon CloudWatch メトリックス「BinLogDiskUsage」を使用することで、バイナリログによって使用中のストレージの量がわかります。このメトリックスによって、放置されていた増大が明らかになった場合は、少なくとも 1 つのリードレプリカが同期していない可能性があります。

general_log と slow_query_log の RDS DB パラメータが有効になっており、ファイルに出力するように設定されている場合、ログファイルの最大サイズは、DB インスタンスに割り当てられたストレージ領域の 2 パーセントに制限されます。これらのファイルのローテーションとディスク使用量の制御方法については、「mysql.rds_rotate_general_log」と「mysql.rds_rotate_slow_log」を参照してください。

InnoDB テーブル領域は 10 MB から始まりますが、使用シナリオに応じて大幅に増える場合があります。 たとえば、長時間実行されるトランザクションでは大量のストレージが消費されることがあります。InnoDB テーブル領域には、InnoDB のデータディクショナリと元に戻すための領域が含まれています。領域が割り当てられた後、ファイルサイズが再び小さくなることはありません。RDS はこれを管理できません。このファイルの増大方法をより深く理解するには、Peter Zaitsev のブログエントリ「メイン Innodb テーブル領域が増大し続ける理由」を参照してください。RDS のデフォルト innodb_file_per_table 値が 1 になっていることに注意してください。したがって、このテーブル領域に他の InnoDB テーブルが含まれことはありません。これらのテーブルは独自の .ibd ファイルに保存されています。

Amazon RDS, ストレージ, FreeStorageSpace, 過剰なストレージ領域, BinLogDiskUsage, InnoDB, MySQL


このページは役に立ちましたか? はい | いいえ

AWS サポートナリッジセンターに戻る

サポートが必要ですか?AWS サポートセンターをご覧ください。

公開日: 2015 年 11 月 3 日