使用就地升级将实例升级到 Cloud SQL 企业 Plus 版


本页面介绍如何使用就地升级方法将 Cloud SQL 企业版实例升级到 Cloud SQL 企业 Plus 版。此外,还介绍了将 Cloud SQL 企业 Plus 版实例切换到 Cloud SQL 企业版的过程。

升级到 Cloud SQL 企业 Plus 版可为您带来多项优势和增强的性能。如需了解详情,请参阅 Cloud SQL for PostgreSQL 版本简介

如需为现有 Cloud SQL 企业版实例启用这些增强功能,您必须将其升级到 Cloud SQL 企业 Plus 版。升级过程需要几分钟才能完成,且停机时间接近于零。切换到 Cloud SQL 企业版最长可能需要 60 秒的停机时间。

此外,此升级流程不需要您更改应用连接到的端点。

准备工作

  • 确保您在 PostgreSQL 12 或更高版本上运行 Cloud SQL 企业版实例。

    如果您的实例使用的是早期版本的 PostgreSQL,则必须将实例升级到 PostgreSQL 12 或更高版本。如需了解详情,请参阅就地升级数据库主要版本

检查用于 PITR 的事务日志的存储位置

所有 Cloud SQL 企业 Plus 版实例都会自动启用时间点恢复 (PITR)。如果要升级的 Cloud SQL 企业版实例将用于 PITR 的预写式日志存储在磁盘上,则升级到 Cloud SQL 企业 Plus 版的过程会将预写式日志的存储位置从磁盘切换为 Cloud Storage。

在升级到 Cloud SQL 企业 Plus 版之前,请检查 Cloud SQL 企业版实例是否将进行用于 PITR 的预写式日志的存储位置切换。如需详细了解如何检查实例以及说明,请参阅检查用于 PITR 的事务日志的存储位置

如需详细了解如何在升级过程中切换事务日志存储位置,请参阅用于 PITR 的事务日志的存储位置

将实例升级到 Cloud SQL 企业 Plus 版

按照本部分中的过程将 Cloud SQL 企业版实例升级到 Cloud SQL 企业 Plus 版。

控制台

  1. 在 Google Cloud 控制台中,转到 Cloud SQL 实例页面。

    转到“Cloud SQL 实例”

  2. 如需打开实例的概览页面,请点击实例名称。
  3. 点击修改
  4. 选择 Cloud SQL 版本部分中,点击升级
  5. 升级到企业 Plus 版面板中,输入您的实例 ID,然后点击升级版本

或者,您也可以通过点击实例概览页面的配置部分中的升级来升级实例。

gcloud

以下代码示例演示了如何将实例升级到 Cloud SQL 企业 Plus 版:

gcloud sql instances patch INSTANCE_ID \
  --edition=enterprise-plus \
  --tier=MACHINE_TYPE \
  --project=PROJECT_ID

可选:您还可以通过添加 --enable-data-cache 标志来为实例启用数据缓存

替换以下内容:

  • PROJECT_ID:要升级的实例的项目 ID。
  • INSTANCE_ID:要升级的实例的名称。
  • MACHINE_TYPE:要升级到的实例机器类型。如需详细了解 Cloud SQL 企业 Plus 版的机器类型,请参阅 Cloud SQL 企业 Plus 版实例的机器类型

REST

以下命令会将您的实例升级到 Cloud SQL 企业版并触发重启操作。

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_ID:要升级的实例的项目 ID。
  • INSTANCE_ID:要升级的实例的 ID。
  • MACHINE_TYPE:要升级到的实例机器类型。如需详细了解 Cloud SQL 企业 Plus 版的机器类型,请参阅 Cloud SQL 企业 Plus 版的实例的机器类型

可选:您可以通过将 dataCacheEnabled 参数设置为 true 来启用数据缓存

HTTP 方法和网址:

PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID

请求 JSON 正文:

{
  "settings": {
      "tier": "MACHINE_TYPE",
      "edition": "ENTERPRISE_PLUS",
      "dataCacheConfig": {
        "dataCacheEnabled": true
      },
  }
}

如需发送您的请求,请展开以下选项之一:

您应该收到类似以下内容的 JSON 响应:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

REST v1beta4

以下命令会将您的实例升级到 Cloud SQL 企业版并触发重启操作。

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_ID:要升级的实例的项目 ID。
  • INSTANCE_ID:要升级的实例的 ID。
  • MACHINE_TYPE:要升级到的实例机器类型。如需详细了解 Cloud SQL 企业 Plus 版的机器类型,请参阅 Cloud SQL 企业 Plus 版的实例的机器类型

可选:您可以通过将 dataCacheEnabled 参数设置为 true 来启用数据缓存

HTTP 方法和网址:

PATCH https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID

请求 JSON 正文:

{
  "settings": {
      "tier": "MACHINE_TYPE",
      "edition": "ENTERPRISE_PLUS",
      "dataCacheConfig": {
        "dataCacheEnabled": true
      },
  }
}

如需发送您的请求,请展开以下选项之一:

您应该收到类似以下内容的 JSON 响应:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

用于 PITR 的事务日志的存储位置

如果您的 Cloud SQL 企业版实例将 PITR 的事务日志存储在磁盘上,则开始升级到 Cloud SQL 企业 Plus 版的过程会将这些日志的存储位置切换为 Cloud Storage。

以下情况适用于位置切换过程:

  • 该过程大约需要 transactionLogRetentionDays PITR 配置设置的时长,才能完成切换为 Cloud Storage。
  • 在切换到 Cloud Storage 期间,我们建议您不要修改 transactionLogRetentionDays PITR 配置设置。即使您增加 transactionLogRetentionDays,预写式日志在磁盘上保留的时间也不会超过 Cloud SQL 企业版实例的 7 天默认值。

Cloud SQL 企业 Plus 版备份和日志存储默认设置

升级到 Cloud SQL 企业 Plus 版后,所有升级后的实例的默认事务日志保留期限都会增加到 14 天。对于此增加情况以及您为事务日志保留期限配置的任何其他增加值,需要达到增加后的新值才能达到 PITR 的完整保留窗口。例如,如果事务日志保留天数的旧值为 7,并且新值增加到 14,则升级后前 7 天的 PITR 窗口只有 7 天。在第 8 天,PITR 窗口变为 8 天,第 9 天变为 9 天,直到第 14 天保留期限最终增加到 14 天。

此外,默认的自动备份数量从 8 个增加到 15 个。

如果您在执行主要版本升级后升级到 Cloud SQL 企业 Plus 版,则无法对主要版本升级之前发生的时间点执行 PITR。即使您的保留期限涵盖该时间段,此限制也适用。您可以将实例恢复到开始主要版本升级后的某个时间点。

更改为 Cloud SQL 企业版

控制台

  1. 在 Google Cloud 控制台中,转到 Cloud SQL 实例页面。

    转到“Cloud SQL 实例”

  2. 如需打开实例的概览页面,请点击实例名称。
  3. 点击修改
  4. 选择 Cloud SQL 版本部分中,点击切换到企业版
  5. 切换到企业版面板中,输入您的实例 ID,然后点击切换版本

或者,您也可以通过点击实例概览页面的配置部分中的更改为企业版来切换到 Cloud SQL 企业版。

gcloud

以下代码示例显示如何将实例更改为 Cloud SQL 企业版:

gcloud sql instances patch INSTANCE_ID \
  --edition=enterprise \
  --tier=MACHINE_TYPE \
  --project=PROJECT_ID
替换以下内容:
  • PROJECT_ID:实例的项目 ID。
  • INSTANCE_ID:实例的名称。
  • MACHINE_TYPE:要切换到的实例机器类型。如需详细了解 Cloud SQL 企业版的机器类型,请参阅 Cloud SQL 企业版实例的机器类型

REST

以下命令会将您的实例更改为 Cloud SQL 企业版并触发重启操作。

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_ID:实例的项目 ID。
  • INSTANCE_ID:实例的 ID。
  • MACHINE_TYPE:要切换到的实例机器类型。如需详细了解 Cloud SQL 企业版的机器类型,请参阅 Cloud SQL 企业版实例的机器类型

HTTP 方法和网址:

PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID

请求 JSON 正文:

{
  "settings": {
      "tier": "MACHINE_TYPE",
      "edition": "ENTERPRISE"
  }
}

如需发送您的请求,请展开以下选项之一:

您应该收到类似以下内容的 JSON 响应:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

REST v1beta4

以下命令会将您的实例更改为 Cloud SQL 企业版并触发重启操作。

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_ID:实例的项目 ID。
  • INSTANCE_ID:实例的 ID。
  • MACHINE_TYPE:要切换到的实例机器类型。如需详细了解 Cloud SQL 企业版的机器类型,请参阅 Cloud SQL 企业版实例的机器类型

HTTP 方法和网址:

PATCH https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID

请求 JSON 正文:

{
  "settings": {
      "tier": "MACHINE_TYPE",
      "edition": "ENTERPRISE"
  }
}

如需发送您的请求,请展开以下选项之一:

您应该收到类似以下内容的 JSON 响应:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

Cloud SQL 企业版备份和日志存储默认设置

更改为 Cloud SQL 企业版并不会切换用于 PITR 的事务日志的存储位置。如果您的 Cloud SQL 企业 Plus 版实例将其 PITR 事务日志存储在 Cloud Storage 中,则日志会保留在 Cloud Storage 中。但是,默认情况下,系统会为 PITR 存储 14 天的事务日志,而是将默认值更改为 7 天。备份配置不会更改。

后续步骤