postgresql.conf文件,适用于在虚拟机上运行 AlloyDB Omni 的环境。数据库集群清单,适用于在 Kubernetes 集群上运行 AlloyDB Omni 的环境。
在容器化 AlloyDB Omni 中更新参数
在虚拟机上运行的 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 字段中的值不同。例如,您应用某个不存在的参数,或者将字符串值设置为整数参数。