配置实例的数据库标志

本页面介绍了如何为 AlloyDB for PostgreSQL 集群中的实例添加数据库标志、修改数据库标志以及从实例中删除数据库标志。

您可以使用数据库标志执行许多操作,包括调整 PostgreSQL 参数、调整选项以及配置和优化实例。 除非您移除数据库标志或再次修改其值,否则对数据库标志值的修改会一直保留在相应实例中。

在某些情况下,设置一个标志时,可能需要设置另一个标志才能完全启用所需功能。

在您设置、移除或修改数据库实例的标志后,AlloyDB 可能会重启该实例。这取决于标志,如支持的数据库标志中所列。

当您在需要重启的主实例或读取池实例中修改数据库标志时,可以选择以下维护政策之一:

  • 停机时间短。此政策默认处于启用状态。我们建议您为所有生产 AlloyDB 集群使用此政策,因为它可以最大限度地减少应用停机时间。

    启用低停机时间政策后,更新需要重启集群主实例的标志会产生以下影响:

    • 对于大多数工作负载,主实例的停机时间不到一秒。

    • 主实例上的标志会在大约 15 分钟后完成更新,变为新值。

    在读取池实例上更新需要重启的标志会产生以下影响:

    • 读取池实例不需要停机。

    • 读取池实例上的标志大约在 10 分钟后完成更新,变为新值。

  • 强制应用。如需更快地应用标志更新,请将 FORCE_APPLY 选项与 gcloud beta alloydb instances update 命令结合使用。

    此政策更适合开发环境,可让您快速添加或修改标志,但代价是实例停机时间更长,数据库性能或吞吐量暂时下降。在强制应用标志更新后,集群会在几分钟内恢复到最佳性能。

    启用强制应用政策后,更新需要重新启动集群主实例的标志会产生以下影响:

    • 主实例会停机约 1 分钟。

    • 主实例上的标志会在一两分钟后完成更新,变为新值。

    在读取池实例上更新需要重启的标志会产生以下影响:

    • 读取池实例的停机时间约为一分钟。

    • 读取池实例上的标志会在一两分钟后完成更新,变为新值。

准备工作

  • 您使用的 Google Cloud 项目必须已启用才能访问 AlloyDB
  • 您必须在所使用的 Google Cloud 项目中拥有以下 IAM 角色之一:
    • roles/alloydb.admin(AlloyDB Admin 预定义 IAM 角色)
    • roles/owner(Owner 基本 IAM 角色)
    • roles/editor(Editor 基本 IAM 角色)

    如果您不拥有上述任何角色,请与组织管理员联系以申请访问权限。

控制台

  1. 在 Google Cloud 控制台中,前往集群页面。

    转到集群

  2. 资源名称列中点击相应集群。

  3. 概览页面中,前往集群中的实例,选择一个实例,然后点击修改

  4. 对实例添加、修改或删除数据库标志:

    添加标志

    1. 如需向实例添加数据库标志,请点击添加标志
    2. 新增数据库标志列表中选择一个标志。
    3. 为标志提供值。
    4. 点击完成

    修改标志

    1. 如需修改实例中存在的数据库标志,请展开相应的数据库标志,然后在修改数据库标志部分中修改现有标志的值。
    2. 点击完成

    删除标志

    1. 如需从实例中删除数据库标志,请选择相应标志,然后点击删除图标。
    2. 点击完成
  5. 点击更新实例

gcloud

使用 gcloud alloydb instances update 命令可更改实例的数据库标志。

   gcloud alloydb instances update INSTANCE_ID \
   --database-flags FLAGS_LIST \
   --region=REGION_ID \
   --cluster=CLUSTER_ID \
   --project=PROJECT_ID

如需更快地应用标志更新,请添加实参 --update-mode=FORCE_APPLY。由于这可能会暂时降低数据库性能,因此请避免在生产环境中使用此选项。

   gcloud beta alloydb instances update INSTANCE_ID \
   --database-flags FLAGS_LIST \
   --region=REGION_ID \
   --cluster=CLUSTER_ID \
   --project=PROJECT_ID \
   --update-mode=FORCE_APPLY

替换以下内容:

  • INSTANCE_ID:实例的 ID。
  • FLAGS_LIST:一个或多个数据库标志规范的英文逗号分隔列表。每个规范都由标志的名称、等号 (=) 和要分配给标志的值组成。对于不需要赋值的数据库标志,请提供相应标志的名称,后跟一个等号 (=)。
  • REGION_ID:实例所在的区域,例如 us-central1
  • CLUSTER_ID:实例所在集群的 ID。
  • PROJECT_ID:在您修改数据库标志后,集群所在项目正在进行低停机时间或零停机时间维护周期。

如需查看实例当前手动设置的标志列表,请运行以下命令:

   gcloud alloydb instances describe INSTANCE_ID \
   --region=REGION_ID \
   --cluster=CLUSTER_ID \
   --project=PROJECT_ID