数据库参数(也称为全局统一配置 (GUC) 参数)可让您调整 AlloyDB Omni 数据库集群的性能和行为。如需了解详情,请参阅 PostgreSQL 文档中的 设置参数。
准备工作
在配置数据库参数之前,请确保您已完成以下操作:
配置数据库参数
如需配置数据库参数,请使用 DBCluster 资源规范的 primarySpec 部分中的 parameters 字段。
更新资源规范
将所需参数及其值添加到 DBCluster 资源规范中:
DBCluster:
metadata:
name: CLUSTER_NAME
spec:
primarySpec:
# ... other settings ...
parameters:
max_wal_size: "MAX_WAL_SIZE"
max_connections: "MAX_CONNECTIONS_LIMIT"
替换以下内容:
CLUSTER_NAME:数据库集群的名称。MAX_WAL_SIZE:WAL 在自动 WAL 检查点之间可以增长到的最大大小,例如2GB。MAX_CONNECTIONS_LIMIT:允许连接到数据库服务器的并发连接数上限,例如200。支持的最小值为50。
创建集群期间支持的参数
您可以在创建集群期间的 DBCluster 资源规范中配置以下数据库参数 (GUC):
log_connectionslog_disconnectionslog_hostnamelog_statementmax_connectionsmax_wal_sizehuge_pagestcp_keepalives_idletcp_keepalives_intervaltcp_keepalives_count
您无法使用 DBCluster 规范配置未包含在此列表中的参数,例如 shared_buffers。相反,您必须在创建集群后手动更新这些参数。
应用配置
使用您偏好的编排器界面应用更改。
Ansible
ansible-playbook -i DEPLOYMENT_SPECIFICATION DBCLUSTER_PLAYBOOK -e resource_spec=DBCLUSTER_SPECIFICATION执行以下变量替换操作:
DEPLOYMENT_SPECIFICATION: 您在 安装 AlloyDB Omni 组件中创建的部署规范的路径。DBCLUSTER_PLAYBOOK:您为数据库集群创建的剧本的路径。DBCLUSTER_SPECIFICATION:集群规范的路径。
alloydbctl
alloydbctl apply -d DEPLOYMENT_SPECIFICATION -r DBCLUSTER_SPECIFICATION执行以下变量替换操作:
DEPLOYMENT_SPECIFICATION: 您在 安装 AlloyDB Omni 组件中创建的部署规范的路径。DBCLUSTER_SPECIFICATION:集群规范的路径。
在创建集群后更新数据库参数
如需在创建集群后更新参数,您必须手动修改数据库节点上的配置文件。
在高可用性集群中更新参数
如需在高可用性 (HA) 集群中手动更新数据库参数,请完成以下步骤:
如果
DBCluster规范文件中将availability.enableAutoFailover和availability.enableAutoHeal设置为true,请将其设置为false。DBCluster: metadata: name: my-db-cluster spec: databaseVersion: 18.1.0 mode: "" availability: ... enableAutoFailover: false enableAutoHeal: false ...使用您偏好的界面应用更新后的资源规范。
在每个数据库节点上,修改
30startup.conf文件在 以下目录中:DATA_DISK_PATH/18/db/postgresql.conf.d/。将
DATA_DISK_PATH替换为DBCluster资源规范中名为DataDisk的磁盘的path字段中的值。DBCluster 规范示例:
DBCluster: spec: primarySpec: resources: disks: - name: DataDisk path: /var/lib/alloydbomni/data # This is your DATA_DISK_PATH在
30startup.conf文件中添加或更新数据库参数配置。如需了解详情,请参阅 PostgreSQL 文档。在所有节点上重启数据库服务:
sudo systemctl restart alloydbomni18如果您修改了
DBCluster资源规范中的availability.enableAutoFailover和availability.enableAutoHeal字段,请将其恢复为原始值并应用更改。
在独立集群中更新参数
如需在独立集群中手动更新数据库参数,请完成以下步骤:
在数据库节点上,更新以下目录中的
30startup.conf文件:DATA_DISK_PATH/18/db/postgresql.conf.d/。将
DATA_DISK_PATH替换为DBCluster资源规范中为DataDisk定义的文件系统路径。在
30startup.conf文件中添加或更新数据库参数配置。重启数据库服务:
sudo systemctl restart alloydbomni18
验证参数更改
应用配置后,您可以使用 psql 中的 SHOW 命令验证参数是否已更新:
SHOW PARAMETER_NAME;将 PARAMETER_NAME 替换为您配置的参数的名称。