AlloyDB Omni のデータベース パラメータを構成するには、次のいずれかでGrand Unified Configuration(GUC)パラメータを更新します。
VM で AlloyDB Omni を実行する環境用の
postgresql.conf
ファイル。Kubernetes クラスタで AlloyDB Omni を実行する環境用のデータベース クラスタ マニフェスト。
コンテナ化された AlloyDB Omni でパラメータを更新する
VM で実行されている AlloyDB Omni では、次のように postgresql.conf
ファイルを編集してパラメータを更新できます。
AlloyDB Omni のインストールの
postgresql.conf
構成ファイルを探します。テキスト エディタを使用して、
postgresql.conf
でデータベース フラグを追加または更新します。たとえば、パスワードの有効期限を適用するには、
postgresql.conf
ファイルで次のフラグを設定します。password.enforce_expiration = ON
データベース フラグを追加または編集したら、
postgresql.conf
ファイルを再読み込みして変更を有効にします。たとえば、Docker を使用して AlloyDB Omni をインストールした場合は、次のコマンドを実行して Docker インスタンスを再起動し、postgresql.conf
を再読み込みします。docker restart CONTAINER-NAME
詳細については、PostgreSQL ドキュメントのパラメータの設定をご覧ください。
Kubernetes クラスタ上の AlloyDB Omni でパラメータを更新する
データベース パラメータは、データベース クラスタ マニフェストの primarySpec
セクションの parameters
フィールドを使用して構成できます。
spec:
primarySpec:
parameters:
"PARAMETER_NAME": "PARAMETER_VALUE"
...
次のように置き換えます。
PARAMETER_NAME
: パラメータの名前(例:autovacuum
)。PARAMETER_VALUE
: パラメータの値(off
など)。
パラメータによっては、変更を有効にするためにクラスタを再起動する必要があります。再起動が必要なパラメータのリストを pg_catalog.pg_settings
から取得できます。pg_catalog.pg_settings.context = 'postmaster'
を含むパラメータは、再起動が必要です。
データベース パラメータを更新するには、次のコマンドを実行します。
kubectl patch dbclusters.alloydbomni.dbadmin.goog dbcluster-sample -p '{"spec":{"primarySpec":{"parameters": {"PARAMETER_NAME": "PARAMETER_VALUE"}}}}' --type=merge
パラメータ設定は、currentParameters
フィールドの status
部分にあります。
データベース パラメータを表示するには、次のコマンドを実行します。
kubectl get dbclusters.alloydbomni.dbadmin.goog dbcluster-sample -o jsonpath={.status.primary.currentParameters}
出力は次のようになります。
{"autovacuum":"off","max_connections":"3000"}
AlloyDB Omni がデータベース クラスタ マニフェストでリクエストされたパラメータを適用できない場合、currentParameters
フィールドの値はマニフェストの parameters
フィールドの値と異なる場合があります。たとえば、存在しないパラメータを適用したり、整数パラメータに文字列値を設定したりします。