パラメータグループを使用する - Amazon Relational Database Service

パラメータグループを使用する

データベースパラメータは、データベースの設定方法を指定します。データベースパラメータでは、データベースに割り当てるメモリなどのリソースの量を指定できます。

DB インスタンスとマルチ AZ DB クラスターをパラメータグループに関連付けて、データベースの設定を管理します。Amazon RDS は、デフォルト設定を使用してパラメータグループを定義します。

重要

カスタマイズした設定を使用して独自のパラメータグループを定義できます。次に、独自のパラメータグループを使用するように DB インスタンスとマルチ AZ DB クラスターを変更できます。

DB インスタンスの変更については、Amazon RDS DB インスタンスを変更するを参照してください。マルチ AZ DB クラスターの変更については、「マルチ AZ DB クラスターの変更」を参照してください。

注記

一部の DB エンジンには、オプショングループのオプションとしてデータベースに追加できる追加機能があります。オプショングループの詳細については、オプショングループを使用するを参照してください。

DB パラメータグループは、1 つ以上の DB インスタンスに適用されるエンジン設定値のコンテナとして機能します。

DB クラスターパラメータグループが、マルチ AZ DB クラスターにのみ適用されます。マルチ AZ DB クラスターでは、DB クラスターパラメータグループの設定が、クラスター内のすべての DB インスタンスに使用されます。DB エンジンおよび DB エンジンバージョンのデフォルトの DB パラメータグループが、DB クラスター内の各 DB インスタンスに使用されます。

DB パラメータグループを指定せずに DB インスタンスを作成すると、DB インスタンスはデフォルトの DB パラメータグループを使用します。同様に、DB クラスターパラメータグループを指定せずにマルチ AZ DB クラスターを作成すると、DB クラスターではデフォルトの DB クラスターパラメータグループが使用されます。デフォルトの各パラメータグループには、エンジン、コンピューティングクラス、およびインスタンスの割り当てストレージに基づいた、データベースエンジンのデフォルトと Amazon RDS システムのデフォルトが含まれています。デフォルトのパラメータグループのパラメータ設定は変更できません。代わりに、独自のパラメータ設定を選択して、独自のパラメータグループを作成します。DB エンジンのすべてのパラメータが、作成した DB パラメータグループで変更できるわけではありません。

独自のパラメータグループを使用する場合は、新しいパラメータグループを作成し、変更するパラメータを変更します。次に、新しいパラメータグループを使用するように DB インスタンスまたは DB クラスターを変更します。DB パラメータグループ内のパラメータを更新すると、このパラメータグループに関連付けられたすべての DB インスタンスに変更が適用されます。同様に、マルチ AZ DB クラスターパラメータグループ内のパラメータを更新すると、この DB クラスターパラメータグループに関連付けられたすべての Aurora クラスターに変更が適用されます。

AWS CLI の copy-db-parameter-group コマンドで、既存の DB パラメータグループをコピーすることもできます。AWS CLI の copy-db-cluster-parameter-group コマンドで、既存の DB クラスターパラメータグループをコピーすることができます。パラメータグループをコピーすることは、既存の DB パラメータグループのカスタムパラメータと値を、新しい DB パラメータグループに含める場合に便利な方法です。

パラメータグループのパラメータを使用する際の重要なポイントを以下に示します。

  • DB インスタンスパラメータは静的または動的に使用することができます。静的パラメータを変更して DB パラメータグループを保存すると、パラメータの変更は関連付けられている DB インスタンスを手動で再起動した後に有効になります。

    動的パラメータを変更すると、デフォルトでは、パラメータの変更はただちに DB インスタンスに適用され、再起動は不要です。パラメータの変更を、関連付けられている DB インスタンスが再起動されるまで延期するには、AWS CLI または RDS API を使用して、パラメータ変更の ApplyMethodpending-reboot に設定します。

    AWS Management Console を使用して DB インスタンスのパラメータ値を変更するときには、常に動的パラメータ向けの ApplyMethod として immediate を使用します。静的パラメータの場合、AWS Management Console は常に ApplyMethod として pending-reboot を使用します。

    AWS CLI を使用してパラメータ値を変更する方法については、「modify-db-parameter-group」を参照してください。RDS API を使用してパラメータ値を変更する方法については、「ModifyDBParameterGroup」を参照してください。

    注記

    AWS CLI、あるいは RDS for SQL Server DB インスタンス上の RDS API で、動的パラメータとともに pending-reboot を使用するとエラーが発生します。RDS for SQL Server で apply-immediately を使用する

  • DB クラスターパラメータは静的または動的に使用することができます。静的パラメータを変更して DB クラスターのパラメータグループを保存する場合、パラメータの変更は、関連付けられている DB クラスターを手動で再起動した後に有効になります。

    動的パラメータを変更すると、デフォルトでは、パラメータの変更はただちに DB クラスターに適用され、再起動は不要です。パラメータの変更を、関連する DB クラスターが再起動されるまで延期するには、AWS CLI または RDS API を使用して、パラメータ変更の ApplyMethodpending-reboot に設定します。

    AWS Management Console を使用して DB クラスターのパラメータ値を変更するときには、常に動的パラメータ向けの ApplyMethod として immediate を使用します。静的パラメータの場合、AWS Management Console は常に ApplyMethod として pending-reboot を使用します。

    AWS CLI を使用してパラメータ値を変更する方法については、「modify-db-cluster-parameter-group」を参照してください。RDS API を使用してパラメータ値を変更する方法については、「ModifyDBClusterParameterGroup」を参照してください。

  • DB インスタンスが、その関連付けられた DB パラメータグループに対する最新の変更を使用していない場合、AWS Management Console は、DB パラメータグループのステータスを [再起動の保留中] と表示します。パラメータグループの [再起動の保留中] のステータスにより、次回のメンテナンスウィンドウで自動的に再起動されることはありません。パラメータの最新の変更を DB インスタンスに適用するには、DB インスタンスを手動で再起動します。

  • 新しい DB パラメータグループを DB インスタンスに関連付ける場合、変更された静的パラメータと動的パラメータは再起動後にのみ適用されます。ただし、新しく関連付けられた DB パラメータグループの動的パラメータを変更すると、これらの変更は再起動せずに直ちに適用されます。DB パラメータグループの変更については、「Amazon RDS DB インスタンスを変更する」を参照してください。

  • マルチ AZ DB クラスターに関連付けられている DB クラスターパラメータグループを変更した後、DB クラスターを再起動して、DB クラスター内のすべての DB インスタンスに変更を適用します。

    マルチ AZ DB クラスターの再起動については、「マルチ AZ DB クラスターとリーダー DB インスタンスの再起動」を参照してください。

  • 表現、数式、関数を使用して、整数およびブール型パラメータを指定することができます。関数には、数学的なログ式を含めることができます。詳細については、「DB パラメータの指定」を参照してください。

  • DB インスタンスまたはマルチ AZ DB クラスターを作成する前、およびそこでデータベースを作成する前に、パラメータグループに含まれるデータベースの文字セットまたは照合パラメータをすべて設定します。これにより、デフォルトのデータベースと新しいデータベースで、指定した文字セットと照合値が使用されるようになります。文字セットまたは照合パラメータを変更した場合、パラメータの変更は既存のデータベースに適用されません。

    一部の DB エンジンでは、ALTER DATABASE コマンドを使用して、既存のデータベースの文字セットまたは照合値を変更できます。次に例を示します。

    ALTER DATABASE database_name CHARACTER SET character_set_name COLLATE collation;

    データベースの文字セットまたは照合値の変更の詳細については、DB エンジンのドキュメントを参照してください。

  • パラメータグループに不適切な設定のパラメータがあると、パフォーマンスが低下したりシステムが不安定になったり、予期しない悪影響が生じることがあります。データベースパラメータの変更時には常に注意が必要です。パラメータグループの変更前にはデータをバックアップしてください。テスト用 DB インスタンスまたは DB クラスターでパラメータグループの設定の変更を試してから、本番稼働用 DB インスタンスまたは DB クラスターにそれらの変更を適用してください。

  • DB エンジンでサポートされているパラメータを決定するには、DB インスタンスまたは DB クラスターで使用される DB パラメータグループおよび DB クラスターパラメータグループのパラメータを表示します。詳細については、「DB パラメータグループのパラメータ値を表示する」および「DB クラスターパラメータグループのパラメータ値を表示する」を参照してください。