本页面介绍了可供 Cloud SQL 实例使用的设置。
Cloud SQL for PostgreSQL 的设置
设置 | 创建后能否修改? | 可能的值 |
---|---|---|
实例 ID | 否 | 由小写字母、数字和连字符组成;必须以字母开头。 总长度不得超过 98 个字符。 |
区域 | 否 |
对于 Cloud SQL 企业 Plus 版:asia-east1 - 台湾asia-northeast1 - 东京asia-northeast2 - 大阪asia-northeast3 - 首尔asia-south1 - 孟买asia-south2 - 德里asia-southeast1 - 新加坡asia-southeast2 - 雅加达australia-southeast1 - 悉尼australia-southeast2 - 墨尔本europe-central2 - 华沙europe-north1 - 芬兰europe-southwest1 - 马德里europe-west1 - 比利时europe-west2 - 伦敦europe-west3 - 法兰克福europe-west4 - 荷兰europe-west6 - 苏黎世europe-west8 - 米兰europe-west9 - 米兰europe-west12 - 都灵me-central1 - 多哈me-central2 - 达曼me-west1 - 特拉维夫northamerica-northeast1 - 蒙特利尔northamerica-northeast2 - 多伦多southamerica-east1 - 圣保罗us-central1 - 爱荷华us-east1 - 南卡罗来纳us-east4 - 北弗吉尼亚us-east5 - 哥伦布us-south1 - 达拉斯us-west1 - 俄勒冈us-west2 - 洛杉矶us-west3 - 盐湖城us-west4 - 拉斯维加斯对于 Cloud SQL 企业版: africa-south1 - 约翰内斯堡asia-east1 - 台湾asia-east2 - 香港asia-northeast1 - 东京asia-northeast2 - 大阪asia-northeast3 - 首尔asia-south1 - 孟买asia-south2 - 德里asia-southeast1 - 新加坡asia-southeast2 - 雅加达australia-southeast1 - 悉尼australia-southeast2 - 墨尔本europe-central2 - 华沙europe-north1 - 芬兰europe-southwest1 - 马德里europe-west1 - 比利时europe-west2 - 伦敦europe-west3 - 法兰克福europe-west4 - 荷兰europe-west6 - 苏黎世europe-west9 - 巴黎europe-west10 - 柏林europe-west12 - 都灵me-central1 - 多哈me-central2 - 达曼me-west1 - 特拉维夫northamerica-northeast1 - 蒙特利尔northamerica-northeast2 - 多伦多southamerica-east1 - 圣保罗southamerica-west1 - 圣地亚哥us-central1 - 爱荷华us-east1 - 南卡罗来纳us-east4 - 北弗吉尼亚us-east5 - 哥伦布us-south1 - 达拉斯us-west1 - 俄勒冈us-west2 - 洛杉矶us-west3 - 盐湖城us-west4 - 拉斯维加斯 |
可用区 | 是 | 可能的值取决于区域。 |
数据库版本 | 否 |
对于 Cloud SQL 企业 Plus 版:Console string API enum string PostgreSQL 15 (default)对于 Cloud SQL 企业版: Console string API enum string PostgreSQL 15 (default) |
SSL 模式 | 是 | 按如下方式强制执行/启用 SSL:
|
设置版本 | 是 | ENTERPRISE 或 ENTERPRISE PLUS |
设置密码政策 | 是 | 是否配置。 |
专用 IP | 一旦启用,就无法停用。 | 已激活或已停用。 |
公共 IP | 是 | 已激活或已停用。 |
已获授权的网络 | 是 | 如果启用了公共 IP,则为有权连接到实例的 IP 地址。您还可以使用 CIDR 表示法将此值指定为 IP 地址范围。 |
Google Cloud 服务的专用路径 | 是 | 已激活或已停用。 |
数据缓存 | 是 | 已激活或已停用。 |
机器类型 | 是 | 从共享核心或专用核心中进行选择。对于共享核心,每种机器类型都按实例的 CPU(核心)数量和内存量进行分类。 对于专用核心,请选择自定义单选按钮以创建自定义机器配置,而不是选择预定义的配置。 了解详情 |
核心数 | 是 |
对于 Cloud SQL 企业 Plus 版: 2 到 128(仅限预定义机器类型) 对于 Cloud SQL 企业版: 1 到 96(必须为 1 或偶数) 部分用于共享 vCPU |
内存 | 是 |
对于 Cloud SQL 企业 Plus 版:每个 vCPU 16 到 864 GB (预定义机器类型) 对于 Cloud SQL 企业版:每个 vCPU 0.9 到 6.5 GB(必须是 256 MB 的倍数且不小于 3.75 GB) |
存储类型 | 否 |
SSD(默认值) HDD(仅限 Cloud SQL 企业版) |
存储空间容量 | 是 (仅限扩容) |
至少包含一个非共享 vCPU 的实例最多可具有 64 TB。 包含一个共享 vCPU 的实例最多可具有 3054 GB 存储空间。 请注意,创建或增加存储空间容量达到 64 TB 时,常见操作(例如备份)的延迟时间可能会增加,具体取决于您的工作负载。 |
启用存储空间自动扩容功能 | 是 |
开启(默认值) 关闭 |
存储空间自动扩容上限 | 是 | 以 GB 为单位。默认值 0 表示无限制。 |
备份 | 是 |
开启(默认值) 关闭 |
位置选项 | 是 | 多区域(默认值) 区域 此外,还有一个下拉菜单,其中包含多区域列表(当您选择多区域时)或单区域列表(当您选择单区域时)。 |
实例删除保护 | 是 | 已激活或已停用。 |
启用时间点恢复 | 是 (请参阅备注) |
开启(默认值) 关闭 |
可用性:单可用区 | 是 |
开启(默认值) 关闭 |
高可用性(区域级) | 是 |
开启 关闭(默认值) |
维护:首选时段 | 是 |
任意(默认值) 星期几 |
维护:更新顺序 | 是 | 任意(默认值) 较晚 较早 |
数据库标志 | 是 | 请参阅配置数据库标志。 |
- 实例 ID
实例 ID 是实例的名称,它用于唯一地标识项目中的实例。如有可能,请选择与实例目的一致的实例名称。
无需在实例名称中包含项目 ID。此操作将在适当的位置(例如在日志文件中)自动完成。project-ID:instance-ID
的总长度不得超过 98 个字符。- 区域
- 实例所在的 Google Cloud 区域。您只能在创建实例期间设置区域。为了提升性能,请将您的数据存储在需要这些数据的服务附近。如需了解详情,请参阅实例位置。
- 可用区
- 实例所在的 Google Cloud 可用区。如果您要从 Compute Engine 实例进行连接,请选择 Compute Engine 实例所在的可用区。否则,接受默认可用区。如果需要,您可以稍后修改实例以更改可用区。如需了解详情,请参阅实例位置。
- 机器类型
-
确定可供 Cloud SQL 实例使用的内存和虚拟核心。 机器类型可用性由您的 Cloud SQL 版本决定。
对于需要实时处理的工作负载(例如在线事务处理 [OLTP]),请确保实例具有足够的内存,能够容纳整个工作集。但是,还存在其他影响内存要求的因素,例如活跃连接数和内部开销进程。您应该执行负载测试,避免在生产环境中出现性能问题。
配置实例时,请选择足够的内存和 vCPU 来处理您的工作负载,并随着工作负载的增加进行升级。机器 vCPU 不足的机器配置可能会导致不再纳入服务等级协议 (SLA) 的覆盖范围。如需了解详情,请参阅运维指南。
Cloud SQL Enterprise Plus 版实例的机器类型 对于 Cloud SQL Enterprise Plus 版实例,机器类型预定义如下:
企业 Plus 版机器类型 vCPU 数量 内存 (GB) 本地 SSD db-perf-optimized-N-2 2 16 375 db-perf-optimized-N-4 4 32 375 db-perf-optimized-N-8 8 64 375 db-perf-optimized-N-16 16 128 750 db-perf-optimized-N-32 32 256 1500 db-perf-optimized-N-48 48 384 3000 db-perf-optimized-N-64 64 512 6000 db-perf-optimized-N-80 80 640 6000 db-perf-optimized-N-96 96 768 6000 db-perf-optimized-N-128 128 864 9000 gcloud sql instances create
命令创建自定义实例配置。 自定义实例配置允许您选择实例需要的内存大小和 CPU。这种灵活性可让您选择适合您的工作负载的虚拟机类型。机器类型名称使用以下格式:
db-custom-#-#
将第一个 # 占位符替换为机器中的 CPU 数量,将第二个 # 占位符替换为机器中的内存量。
例如,如果您的机器名称为
db-custom
,并且您的机器具有 1 个 CPU 和 3840 MB RAM,则机器格式为db-custom-1-3840
。选择 CPU 数量和内存量时,您选择的配置有一些限制:
- vCPU 的数量必须为 1 或介于 2 至 96 之间的偶数。
- 内存必须符合以下条件:
- 每个 vCPU 的内存量介于 0.9 至 6.5 GB 之间
- 内存量是 256 MB 的倍数
- 内存量至少为 3.75 GB (3840 MB)
下表列出了每种旧版机器类型的名称、每种机器类型的 CPU 数和 RAM 以及每种机器类型生成的字符串。
您可以通过在 Google Cloud 控制台中指定等效的 CPU 和 RAM、使用 gcloud CLI 或在 API 中指定
db-custom-#-#
来创建等效的机器类型。旧版机器类型 vCPU 数量 内存 (MB) db-custom-CPU-RAM 字符串(API 层字符串) db-n1-standard-1 1 3840 db-custom-1-3840 db-n1-standard-2 2 7680 db-custom-2-7680 db-n1-standard-4 4 15360 db-custom-4-15360 db-n1-standard-8 8 30720 db-custom-8-30720 db-n1-standard-16 16 61440 db-custom-16-61440 db-n1-standard-32 32 122880 db-custom-32-122880 db-n1-standard-64 64 245760 db-custom-64-245760 db-n1-standard-96 96 368640 db-custom-96-368640 db-n1-highmem-2 2 13312 db-custom-2-13312 db-n1-highmem-4 4 26624 db-custom-4-26624 db-n1-highmem-8 8 53248 db-custom-8-53248 db-n1-highmem-16 16 106496 db-custom-16-106496 db-n1-highmem-32 32 212992 db-custom-32-212992 db-n1-highmem-64 64 425984 db-custom-64-425984 db-n1-highmem-96 96 638976 db-custom-96-638976 - 设置密码政策
实例的密码政策。它包括以下选项:
- 最短长度:指定密码必须包含的字符数下限。
- 密码复杂度:检查密码是否为小写字母、大写字母、数字和非字母数字字符的组合。
- 限制密码重复使用:指定您无法重复使用的先前密码数量。
- 禁止使用用户名:禁止在密码中使用用户名。
- 设置密码更改间隔:指定可以更改密码之前的最短时长。
- 核心
实例的 CPU 数。您也可选择创建 CPU 数少于 1 个的实例(共享代码实例或共享 vCPU)。
- 内存
-
可供实例使用的内存量。对于具有较高性能要求的工作负载(例如在线事务处理 (OLTP)),请确保实例具有足够的内存,能够容纳整个工作集。但是,还存在其他影响内存要求的因素,例如活动连接数。执行负载测试,避免在生产环境中出现性能问题。
- 数据库版本
- 除非您仅需要由特定版本提供的功能,否则请接受默认数据库版本 (PostgreSQL 15)。如需了解
gcloud
命令和 REST API 的用法,请参阅参考文档。 - 存储类型
- 选择 SSD(默认值)可以为实例提供 SSD 存储空间。SSD 提供更低的延迟和更高的数据吞吐量。 如果无需对数据进行高性能访问(例如针对长期存储或很少访问的数据),可选择 HDD 来降低成本。
- SSL 模式
-
(可选)用于数据库连接的 SSL/TLS 选项。 Cloud SQL 使用 SSL/TLS 建立与实例的安全、经过身份验证的加密连接。您可以使用 SSL 模式设置
sslMode
来强制建立与实例的所有数据库连接,以使用 SSL/TLS 加密。 您还可以使用此设置来强制执行客户端证书验证。与requireSsl
相比,此设置可让您更精细地控制 SSL 连接。我们建议您使用sslMode
。如需了解详情,请参阅 IpConfiguration。 您可以在创建实例时强制执行 SSL,也可以针对任何现有实例更新 SSL。 - 存储空间容量
-
选择适合数据库大小的容量。创建实例后,您可以通过修改实例配置来手动增加存储空间容量,但不能减少容量。增加存储空间容量不会导致停机。
为实例分配的存储空间容量的大小会影响实例的费用。如需了解详情,请参阅存储和网络价格。
对于只读副本,存储空间容量必须始终至少与主实例的存储空间容量一样大。调整主实例的大小后,系统会根据需要调整所有只读副本的大小,使其至少具有与更新后的主实例一样大的存储空间容量。
- 启用存储空间自动扩容功能
如果启用此设置,Cloud SQL 会每隔 30 秒检查一次您的可用存储空间。如果可用存储空间低于阈值大小,则 Cloud SQL 会自动添加额外的存储空间容量。如果可用存储空间反复低于阈值大小,则 Cloud SQL 会继续添加存储空间,直到达到 64 TB 的上限。
主实例的存储空间自动扩容设置会自动应用于该实例的所有只读副本。您无法为只读副本单独设定存储空间自动扩容设置。
阈值
阈值大小取决于当前为您的实例预配的存储量;此值不能大于 25 GB。
对于预配了 500 GB 或更多存储空间的实例,阈值始终为 25 GB。
对于所预配的存储空间小于 500 GB 的实例,请使用以下公式计算阈值:
5 + (provisioned storage)/25
除法所得结果向下舍入到最接近的整数。
对于具有 66 GB 存储空间容量的实例,其阈值计算如下:
5 + (1/25th of 66 GB) = 5 + (66/25) = 5 + 2.6 -> 5 + 2 = 7 GB
对于具有 1000 GB 存储空间容量的实例,其阈值计算如下:5 + (1/25th of 1000 GB) = 5 + (1000/25) = 5 + 40 = 45 -> rounded down to the maximum value of 25 GB
添加的存储空间量
向实例添加的存储空间量等于阈值大小(不能大于 25 GB)。
大型磁盘的注意事项
对于预配了 500 GB 或更多存储空间的实例,阈值大小始终为 25 GB,添加的存储空间始终为 25 GB。因此,最大可能空白空间为 50 GB。如果您未手动调整磁盘大小超过 5 TB 的实例的大小,即使实例有空白空间,磁盘也会始终保持 99% 的容量。
在快速增加磁盘可用空间使用量的操作(例如大型导入或需要大型临时表的查询)之前,请手动调整磁盘大小,而不是依赖于自动增长功能。
- 存储空间自动扩容上限
如果启用存储空间自动扩容设置,您可以对实例存储空间自动扩容的程度进行具体限制。 请记住,实例的大小越大,操作延迟时间就越长。
您无法缩减存储空间,因此该限制可以阻止您的实例(因流量暂时增加而)扩容太大。请记住,当实例不再能够添加所需的存储空间时,该实例可能停止接受传入的连接,并可能转为离线状态。
将此上限设置为默认值 0 表示未设限(实例层的最大可用存储空间除外)。
如需在创建实例时设置限制,请按照创建实例页面上的说明使用
--storage-auto-increase-limit=INTEGER_VALUE_OF_GB
参数。如需为现有实例设置限制,请对gcloud beta sql instances patch
命令使用同一参数。主实例的存储空间自动扩容上限设置会自动应用于该实例的所有只读副本。您无法为只读副本单独设定存储空间自动扩容上限设置。
- 自动备份和时间点恢复
-
这些选项决定了是否执行自动备份,以及是否启用预写式日志记录。这两个选项都会略微增加性能成本并使用额外的存储空间,但是对于创建副本和克隆以及进行时间点恢复都是必不可少的。选择此选项时,您还可以选择自动备份的时间范围。
系统每天都会在您选择的时间范围内进行一次自动备份。七天后,系统会删除最早的备份。
如需了解时间点恢复,请参阅时间点恢复概览。
- 自动备份的保留设置
-
保留备份数量的默认值为 7,但您可以将其更改为 1 到 365 之间的任何值。
如需了解详情,请参阅 自动备份和事务日志保留。
- 位置选项
-
您可以选择将备份存储在多个或单个区域中。多区域是默认值,也是推荐的选择,因为它在某个区域不可用时可以防止停机。备份会存储在距离实例最近的区域中。
您还可以选择为备份选择自定义位置。 请仅在法规要求或组织政策要求备份位于特定的多区域或单区域时使用此选项。如需了解详情,请参阅自定义位置。
- 实例删除保护
-
保护实例免遭意外删除。如果此设置已启用,您必须先将其停用,然后才能删除实例。请参阅防止删除实例。
- 启用时间点恢复
-
借助时间点恢复,您可以从备份中的特定时间点开始恢复。
如需了解时间点恢复,请参阅时间点恢复概览。
- 可用性:可用区级
将您的实例和备份放置在单个可用区中。选择此选项时,系统不会在服务中断时进行故障切换。 建议仅用于测试和开发目的。
- 高可用性(区域级)
选择高可用性(区域级)时,如果发生服务中断,您的实例就会故障切换到其所属区域中的其他可用区(只要故障切换可用区没有发生服务中断)。建议您为生产环境中的实例选择高可用性(区域级)。
请参阅高可用性配置概览。
- 维护窗口
-
安排 Cloud SQL 实例的维护事件的日期和时间。对于具有高可用性 (HA) 和专用 IP 连接的 Cloud SQL Enterprise Plus 版主实例,维护停机时间通常少于 10 秒。对于所有其他实例,维护停机时间通常不超过 60 秒。
读取副本目前不支持维护期设置。
如需详细了解维护,请参阅 Cloud SQL 实例维护简介。
- 维护时间
您对维护更新的相对顺序和时间的偏好设置。通过更早接收更新,您可以在生产实例获得更新之前先在测试环境中测试维护更新。维护时间设置不会影响 Cloud SQL 应用于实例的维护版本。
如果未设定维护时间设置,则由 Cloud SQL 选择实例更新时间(如适用,会选在维护期内)。
如需详细了解维护,请参阅 Cloud SQL 实例维护简介。
- 专用 IP
- 将您的实例配置为使用专用 IP。了解详情。
- 公共 IP
- 如果启用此设置,系统会为您的实例分配一个公共 IPv4 地址。 当您停用公共 IP 地址后,该地址会被释放;之后您可以重新启用公共 IP 地址,但会收到不同的 IPv4 地址。默认情况下,系统会针对所有地址屏蔽公共 IP 地址。您可以使用已获授权的网络启用访问权限。
- 您可添加特定的 IP 地址或地址范围,从而向这些地址开放实例。
如需了解如何配置 IP 地址,请参阅配置 IP 连接。
- Google Cloud 服务的专用路径
选中此复选框即表示您允许其他 Google Cloud 服务(例如 BigQuery)访问 Cloud SQL 中的数据,并通过专用连接对此数据进行查询。
- 数据缓存
数据缓存是一项可选功能,适用于 Cloud SQL for PostgreSQL 企业 Plus 版实例。数据缓存利用本地 SSD 将操作系统页面缓存从内存扩展到 SSD 层级。Cloud SQL 会管理此设置。使用数据缓存时,缓存整个工作集可实现最高性能。 您可以使用 Google Cloud 控制台、gcloud CLI 或 Cloud SQL Admin API 为 Cloud SQL for PostgreSQL 企业 Plus 版实例启用或停用此设置。
- 激活政策
- 您可以通过启动和停止实例来更改激活政策。停止实例可免除进一步的实例费用。
- 数据库标志
-
您可在 Cloud SQL 实例上设置特定的数据库标志。
如需查看可设置的数据库标志的完整列表,请参阅配置数据库标志。
更改实例设置带来的影响
对于大多数实例设置,Cloud SQL 会立即应用更改,且实例的连接不受任何影响。
更改 CPU 数量或内存大小会导致实例短暂离线(不超过 60 秒)。更改完全生效则可能需要几分钟时间。
更改实例的可用区、配置专用 IP、更改实例的网络以及启用高可用性则会导致实例离线几分钟。
Cloud SQL 会根据实例的内存量自动管理 max_connections
标志的值(如需了解详情,请参阅支持的标志)。PostgreSQL 要求 max_connections
的值在读取副本上始终至少与其在主实例上一样大。因此,如果读取副本的内存少于主实例,则更改主实例的内存量可能会导致其读取副本发生不超过 60 秒的离线。这是因为读取副本可能需要接收新值 max_connections
为了与主实例上的更改保持一致,更新 max_connections
的值需要重启 PostgreSQL。为避免发生这种情况,请将主实例上的 max_connections
标志设置为您选择的值。
请将这些类型的更改规划在服务可以处理相应时长的服务中断时进行。
后续步骤
- 了解如何修改实例。
- 详细了解数据库标志。
- 了解如何为实例授予 IP 访问权限。
- 详细了解复制选项。
- 查看实例的价格。
- 详细了解连接到实例的选项。
- 了解如何为实例配置 IP 地址。