借助数据库参数(也称为全局统一配置 [GUC] 参数),您可以调整 AlloyDB Omni 数据库集群的性能和行为。如需了解详情,请参阅 PostgreSQL 文档中的设置参数。
准备工作
在配置数据库参数之前,请确保您已:
配置数据库参数
如需配置数据库参数,您可以使用 DBCluster 资源规范的 primarySpec 部分中的 parameters 字段。
更新资源规范
在 DBCluster 资源规范中添加或修改所需的参数及其值。您可以在创建集群期间配置参数,也可以在创建集群后更新参数。
以下代码段展示了 GUC 参数的示例。您可以采用类似方式配置其他受支持的数据库参数:
DBCluster:
metadata:
name: CLUSTER_NAME
spec:
primarySpec:
# ... other settings ...
parameters:
# ... existing parameters ...
max_wal_size: "MAX_WAL_SIZE"
max_connections: "MAX_CONNECTIONS_LIMIT"
huge_pages: "HUGE_PAGES"
log_statement: "LOG_STATEMENT"
# ... other parameters ...
替换以下内容:
CLUSTER_NAME:数据库集群的名称。MAX_WAL_SIZE:一个示例参数,用于控制 WAL 在自动 WAL 检查点之间可以增长到的最大大小,例如2GB。MAX_CONNECTIONS_LIMIT:一个示例参数,用于控制允许连接到数据库服务器的并发连接数上限,例如200。支持的最小值为50。HUGE_PAGES:控制大页使用的示例参数,例如on。LOG_STATEMENT:一个示例参数,用于控制记录哪些 SQL 语句,例如all。
应用配置
使用您首选的编排器界面应用更改。
Ansible
如果您直接使用 Ansible 管理 AlloyDB Omni RPM 编排器基础架构,则它会通过运行适当的 playbook 并将所选 update_action 作为额外变量传递来触发更新。
update.yml 的示例文件:
---
- hosts: localhost
vars:
update_action: "update_resource_spec"
ansible_user: your_ssh_user
ansible_ssh_private_key_file: ~/path/to/private-key
roles:
- role: google.alloydbomni_orchestrator.update
运行 Ansible 命令:
ansible-playbook -i DEPLOYMENT_SPECIFICATION update.yml -e resource_spec="DBCLUSTER_SPECIFICATION"执行以下变量替换操作:
DEPLOYMENT_SPECIFICATION:您在安装 AlloyDB Omni 组件中创建的部署规范的路径。DBCLUSTER_SPECIFICATION:集群规范的路径。
alloydbctl
alloydbctl apply -d DEPLOYMENT_SPECIFICATION -r DBCLUSTER_SPECIFICATION执行以下变量替换操作:
DEPLOYMENT_SPECIFICATION:您在安装 AlloyDB Omni 组件中创建的部署规范的路径。DBCLUSTER_SPECIFICATION:集群规范的路径。
验证参数更改
应用配置后,您可以使用 psql 中的 SHOW 命令验证参数是否已更新:
SHOW PARAMETER_NAME;将 PARAMETER_NAME 替换为您配置的参数的名称。
使用网页界面审核数据库参数
您可以使用 AlloyDB Omni Web 界面中的数据库标志页面,审核活跃的数据库标志,并识别与默认引擎值不同的自定义参数。
如需在 Web 界面中审核数据库参数,请完成以下步骤:
- 连接到 Web 界面,然后选择您的集群。
- 在导航菜单中,点击数据库标志。
- 使用以下控件搜索和过滤参数:
- 搜索标志:输入关键字(例如
max)以按名称过滤参数。 - 显示修改后的标志:选中此复选框可仅显示有效值与默认引擎值不同的参数。自定义值也会在当前值列中以黄色突出显示。
- 全部收起或全部展开:收起或展开参数类别组(例如 Google AlloyDB 选项、客户端连接默认值 / 语言区域和格式、客户端连接默认值 / 其他默认值和客户端连接默认值 / 共享库预加载)。
- 搜索标志:输入关键字(例如
- 查看每个类别组中的参数表列:
- 设置:数据库参数的名称。
- 类型:参数的数据类型(例如
INTEGER)。 - 当前值:实例上参数的有效值(如果与默认值不同,则以黄色突出显示)。
- 默认值:参数的默认引擎值。
- 需要重启:指明修改参数是否需要重启数据库(
true或false)。 - 来源:当前值的配置来源(例如
default)。