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 フィールドの値と異なる可能性があります。たとえば、存在しないパラメータを適用したり、整数パラメータに文字列値を設定したりした場合です。