このトピックでは、ビジネス要件に基づいてApsaraDB RDS for MariaDBインスタンスのinnodb_buffer_pool_sizeパラメーターを設定する方法について説明します。 これにより、インスタンスのパフォーマンスを向上させることができます。
背景情報
innodb_buffer_pool_sizeパラメーターを再設定して、RDSインスタンスのInnoDBバッファプールのサイズを変更できます。 このパラメータの値は、次の式を使用して計算されます。
{DBInstanceClassMemory * X/Y}例:
{DBInstanceClassMemory * 7/10}DBInstanceClassMemoryはシステム変数で、RDSインスタンスのメモリ容量を指定します。
Xは分子であり、Yは分母である。
InnoDBバッファプールのサイズは、[128 MB, DBInstanceClassMemory × 8/10] の範囲内でなければなりません。 最小サイズは128 MBで、最大サイズはRDSインスタンス用に購入したメモリ容量の80% です。
RDSインスタンスのInnoDBバッファプールのデフォルトサイズは、次のルールに基づいて計算されます。
クラウドディスクを使用するRDSインスタンスの購入済みメモリ容量が16 GB未満の場合、InnoDBバッファプールのデフォルトサイズは、次の式を使用して計算されます。InnoDBバッファプールのデフォルトサイズ=(RDSインスタンスの購入済みメモリ容量-RDSインスタンスの予約済みメモリ) × 0.75。説明RDSインスタンスの予約メモリは、次の式を使用して計算されます。
MIN {RDSインスタンスの購入メモリ容量 × 0.65, [(RDSインスタンスの購入メモリ容量 /16384) + 1] × 2048}クラウドディスクを使用するRDSインスタンスの購入済みメモリ容量が16 GB以上の場合、InnoDBバッファプールのデフォルトサイズは、次の式を使用して計算されます。InnoDBバッファプールのデフォルトサイズ=RDSインスタンスの購入済みメモリ容量 × 0.75。
InnoDBバッファープールのデフォルトサイズは、128の整数倍です。 計算された結果が128の整数倍でない場合、結果は128の整数倍である最も近い整数に丸められます。 たとえば、RDSインスタンスは1,024 MBのメモリを提供し、計算結果は268、128の倍数である最も近い整数は256です。 この場合、RDSインスタンスのInnoDBバッファプールのデフォルトサイズは256 MBです。
次の表に、さまざまなメモリ容量に対するInnoDBバッファプールのデフォルトサイズと最大サイズを示します。
メモリ容量 (単位: MB) | デフォルトのバッファプールサイズ (単位: MB) | 推奨される最大バッファプールサイズ (単位: MB) |
2,048 | 512 | 512 |
4,096 | 1,536 | 1,536 |
8,192 | 4,608 | 4,608 |
16,384 | 12,288 | 12,288 |
32,768 | 24,576 | 25,600 |
65,536 | 49,152 | 52,224 |
131,072 | 98,304 | 104,448 |
196,608 | 147,456 | 156,672 |
229,376 | 172,032 | 183,296 |
262,144 | 196,608 | 208,896 |
491,520 | 368,640 | 393,216 |
InnoDBバッファープールのサイズは、次の式を使用して得られる結果の倍数である必要があります。innodb_buffer_pool_chunk_sizeパラメーターの値 × innodb_buffer_pool_instancesパラメーターの値。 InnoDBバッファープールのサイズが数式を使用して取得した結果の倍数でない場合、ApsaraDB RDSはサイズを結果の倍数に変更します。 たとえば、数式を使用して取得した結果が1 GBで、innodb_buffer_pool_sizeパラメーターを1.5 GBに設定した場合、ApsaraDBはinnodb_buffer_pool_sizeパラメーターの値を2 GBに変更します。
単一のRDSインスタンスのInnoDBバッファプールのサイズを変更する
- [インスタンス] ページに移動します。 上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。 次に、RDSインスタンスを見つけ、インスタンスのIDをクリックします。
左側のナビゲーションウィンドウで、パラメータ.
innodb_buffer_pool_sizeパラメーターを見つけて、
アイコンをクリックします。 表示されるダイアログボックスで、新しい値を入力し、[OK] をクリックします。 
パラメーターリストの上にある [変更の適用] をクリックします。 表示されたメッセージボックスで、[OK] をクリックします。 次に、RDSインスタンスが再起動するのを待ちます。