资讯动态

Cloud SQL 灾备与备份体系全景:备份、PITR、复制、读池与高级 DR 的实战指南

发布时间:2026/9/13 5:59:19 来源:尧图企业网站定制
Cloud SQL 灾备与备份体系全景备份、PITR、复制、读池与高级 DR 的实战指南【免费下载链接】skillsAgent Skills for Google products and technologies项目地址: https://gitcode.com/GitHub_Trending/skills29/skills本文基于 google/skills 仓库中cloud-sql-basics技能包的灾难恢复参考文档系统梳理 Cloud SQL 的备份体系自动备份、按需备份、增强备份、最终备份、时间点恢复PITR、高可用与只读复制架构、Enterprise Plus 高级 DRSwitchover/Replica Failover并给出全套gcloud sql运维命令与 Terraform 配置示例。读完本文你可以为 MySQL/PostgreSQL/SQL Server 的 Cloud SQL 实例设计一套从日常备份到跨区域容灾演练的完整数据保护方案。1. 文档定位与适用前提该内容来自仓库中的 Cloud SQL 灾备与备份参考文档它是 Cloud SQL Basics 技能 的一组参考文档之一面向已经或准备使用 Cloud SQL 托管 MySQL、PostgreSQL、SQL Server 实例的运维与数据库工程师。按技能入口文档的说明执行本文操作前需满足以下前提见 SKILL.md 前置条件已具备管理 Cloud SQL 实例的 IAM 权限通常使用Cloud SQL Adminroles/cloudsql.admin角色已安装并登录gcloudCLI且目标项目已启用sqladmin.googleapis.comAPI需要区分Enterprise与Enterprise Plus两个版本版本直接决定了 PITR 保留上限、Read Pool 支持、高级 DR 等能力的边界详见 核心概念文档。2. 备份类型与恢复机制Cloud SQL 提供多套并行的数据保护机制各自覆盖不同的故障场景。以下逐一说明其原理、保留策略与适用时机。2.1 自动备份Automated Backups每日在用户可配置的 4 小时窗口内自动对实例做快照保留策略按版本区分Enterprise 版本默认最多保留 7 个备份Enterprise Plus 版本支持最长 35 天的保留期这是日常数据保护的第一道防线建议所有生产实例默认开启。2.2 按需备份On-Demand Backups手动创建的备份在显式删除前一直保留不受自动备份保留窗口约束典型使用时机执行高风险的 Schema 迁移、批量数据导入或重大管理操作之前打一个快照兜底。2.3 增强备份Enhanced Backups增强备份是与 Google CloudBackup and DR Service集成的托管数据保护方案面向企业级治理、集中式管理和跨项目合规场景。其核心能力气隙与不可变保险库Air-Gapped Immutable Vaults备份存放在独立的、逻辑隔离的项目中防止勒索软件与误删除扩散到备份数据更长保留与灵活调度最长支持10 年保留标准备份上限约 1 年调度粒度支持每小时、每日、每周、每月、每年保留锁Retention Lock在保留期到期前备份规则不可删除、不可修改强制约束治理策略跨项目恢复支持将数据库工作负载恢复到不同的目标项目天然适配多项目灾备拓扑。2.4 时间点恢复PITRPITR 利用持续事务日志将实例恢复到任意指定秒引擎日志机制MySQL二进制日志binary loggingPostgreSQL预写日志write-ahead logging, WALSQL Server事务日志transaction logging保留限制Enterprise 版本最长 7 天Enterprise Plus 版本最长 35 天日志存储位置取决于配置可存放在磁盘或 Cloud Storage 上。2.5 最终备份Final Backups在实例被删除或 HA 故障转移后重建rebuild之前系统自动抓取一份最终状态快照防止删除类操作造成不可逆数据丢失。2.6 备份存放位置备份默认存放在距离实例最近的多区域multi-region位置也可以指定自定义的区域/多区域 Cloud Storage 桶。备份既可以恢复到原实例也可以恢复到新的目标实例。2.7 标准备份 vs. 增强备份特性标准备份Standard增强备份Enhanced管理方式实例级 Cloud SQL 备份集中式 Backup and DR Service存储保险库同项目 / 多区域存储桶独立的气隙不可变备份项目最长保留最长 1 年最长 10 年调度每日4 小时可配置窗口每小时、每日、每周、每月、每年保留锁不支持支持强制执行保留策略跨项目恢复标准实例恢复至项目目标集中式跨项目恢复工作流计费模型Cloud SQL 备份存储定价Backup and DR Service 定价模型选择建议常规生产实例用标准备份 PITR 组合即可金融、医疗等强合规场景或需要跨项目/跨组织治理的团队应引入增强备份以获得保留锁与气隙隔离。3. 复制类型与高可用HA备份解决的是事后恢复复制解决的是实时冗余。Cloud SQL 提供三层复制能力HA 热备副本Standby Replicas在同一区域Region的第二可用区放置一台热备 VM采用自动同步复制。主实例发生硬件或可用区级故障时触发即时故障转移instant failover恢复 RTO 最短。独立只读副本Standalone Read Replicas异步只读实例可以是可用区级也可以是跨区域的用于扩展查询流量与就近读取。节点数量上限MySQL/PostgreSQL 每个主实例最多 20 个只读节点SQL Server最多 7 个该上限与 Read Pool 节点共享见 核心概念文档。级联副本Cascading Replicas从另一个只读副本而非直接来自主实例进行复制从而降低主实例的复制压力。4. 高级灾难恢复Advanced DR高级 DR为 Cloud SQL Enterprise Plus 版本独占专为区域级灾难恢复与 DR 演练设计包含四个关键能力指定 DR 副本Designated DR Replica将一个跨区域只读副本指定为区域恢复的目标副本故障转移Replica Failover主区域大面积故障时快速执行跨区故障转移——把指定 DR 副本提升为主实例同时保留旧主实例在复制拓扑中待主区域恢复后再做最终回迁切换Switchover零数据丢失、零停机操作用于计划内跨区切换或日常 DR 演练在主实例与 DR 副本之间优雅互换角色DNS 写端点DNS Write Endpoints提供全局 DNS 端点在 Switchover 或 Replica Failover 之后自动把写流量切换到新提升的主实例应用侧无需改连接串。从这套机制可以看出Enterprise Plus 把跨区域容灾从一套需要手工编排的复制 提升 切 DNS 的操作收敛成了两个可执行的操作原语switchover/failover加一个全局写端点这正是演练常态化DR drill得以落地的前提。5. 读池Read Pools与只读副本的架构选型Enterprise Plus 引入的 Read Pool 与独立只读副本在拓扑目标上不同选型时应按下表区分特性独立只读副本Standalone Read Replica读池节点Read Pool Node首要目的读扩展 跨区域 DR 切换目标高并发、负载均衡的区域内读流量拓扑可直连主实例也可级联仅支持直连主实例复制不支持级联连接端点独立 IP / 连接名单一负载均衡 IP / 连接名池DR 与提升可提升为独立主实例不能直接提升为主实例扩缩机制逐个实例创建/删除手动扩缩或自动扩缩1–20 节点结合 核心概念文档 中的细节选型时还需注意版本约束Read Pool 仅在 Enterprise Plus 版本新网络架构上可用节点规模MySQL/PostgreSQL 为 1–20 个节点SQL Server 为 1–7 个节点独立只读副本与读池节点之和不能超过上述上限自动扩缩读池可按AVERAGE_CPU_UTILIZATION或AVERAGE_DB_CONNECTIONS在--auto-scale-min-node-count与--auto-scale-max-node-count之间动态调整节点数冷却期默认 600 秒最小 60 秒也可用--auto-scale-disable-scale-in禁用缩容SLA 与路由2 个及以上节点的读池纳入 Cloud SQL SLA节点跨可用区分布流量按节点进程健康度路由不感知复制延迟且跨请求的逻辑会话不保证读己之写一致性LSN/GTID 进度可能不同——事务强一致的场景仍应把写流量和部分读流量留在主实例。结论如果你的诉求是读扩展 跨区 DR 演练目标选独立只读副本可提升如果诉求是高并发读 自动扩缩 单一负载均衡端点选 Read Pool。6. 备份与恢复的 CLI 实操以下命令均来自 灾备文档 与 CLI 使用文档可直接复制执行将my-instance、backup_id等替换为实际资源名。6.1 开启自动备份与 PITRgcloud sql instances patch my-instance \ --backup-start-time03:00 \ --enable-point-in-time-recovery \ --quiet--backup-start-time指定每日 4 小时备份窗口的起始时间--enable-point-in-time-recovery开启持续事务日志归档。6.2 创建、查看按需备份# 创建按需备份例如迁移前快照 gcloud sql backups create --instancemy-instance \ --descriptionPre-migration snapshot \ --quiet # 列出实例的全部备份 gcloud sql backups list --instancemy-instance --quiet6.3 从备份恢复恢复到原实例注意会覆盖当前数据gcloud sql backups restore backup_id --restore-instancerestore-instance --quiet恢复到不同的目标实例由于备份 ID 的作用域是源实例跨实例恢复时必须用--backup-instance指明备份来源实例gcloud sql backups restore backup_id \ --restore-instancerestore-instance \ --backup-instancesource-instance \ --quiet6.4 时间点恢复PITR Clone把实例克隆到指定 RFC 3339 时间戳的另一个新实例避免直接覆盖线上数据gcloud sql instances clone source-instance restored-instance \ --point-in-time2026-07-16T12:00:00Z \ --quietPITR Clone 是数据事故误删、坏写入处置的首选姿势先克隆出事故时刻的状态做核对与修复再决定回迁。7. 高可用与灾恢复的 CLI 实操7.1 模拟/触发 HA 故障转移把写流量切到第二可用区的热备实例用于验证 HA 配置与演练gcloud sql instances failover my-ha-instance --quiet7.2 计划内 DR 切换Enterprise Plus执行零数据丢失的跨区 Switchover目标是已指定的 DR 副本gcloud sql instances switchover my-dr-replica --quiet7.3 提升只读副本为主实例故障处置或演练收尾时把独立只读副本从复制拓扑中脱离、提升为独立主实例gcloud sql instances promote-replica my-replica --quiet8. 用 Terraform 声明备份与 PITR若团队采用 IaC 管理 Cloud SQLIaC 参考文档 给出了与上述 CLI 等效的声明式写法resource google_sql_database_instance default { name master-instance region us-central1 database_version POSTGRES_18 deletion_protection false # 生产环境请设为 true防止误销毁 settings { tier db-custom-1-3840 edition ENTERPRISE backup_configuration { enabled true # 开启每日自动备份 point_in_time_recovery_enabled true # 开启持续 WAL 归档以支持 PITR } } }要点backup_configuration.enabled true对应每日自动备份point_in_time_recovery_enabled true单独显式开启持续日志归档。注意deletion_protection在 Google provider 中默认为true测试环境如需terraform destroy需显式置false而生产环境保持开启本身就是一种防误删的备份兜底。9. 权限边界谁能动备份与 DR 资源从 IAM 与安全管理文档 的预定义角色说明看灾备操作存在明确的权限分层编排自动化流程时需要留意roles/cloudsql.admin完全控制包含删除实例与恢复操作roles/cloudsql.editor可管理多数 Cloud SQL 资源但不能从备份恢复restore from backup、不能克隆/删除/提升实例、不能删除备份因此 CI/CD 流水线中的备份创建 恢复演练环节执行者必须持有cloudsql.admin或等价的细粒度组合仅授予cloudsql.editor的账号只能做到备份可创建、不可恢复这在职责分离上其实是一个值得利用的特性——例如让备份任务账号与恢复审批账号分离。10. 落地清单结合上述机制一个可执行的灾备落地清单基线所有生产实例开启自动备份选定低峰--backup-start-time窗口 PITR兜底重大变更迁移、Schema 变更前创建带描述标记的按需备份区域级冗余启用 HA 热备副本用gcloud sql instances failover定期演练区域级容灾Enterprise Plus 实例配置指定跨区域 DR 副本 DNS 写端点用switchover做计划内演练零丢失零停机读扩展高并发读用 Read Pool自动扩缩需要可提升的 DR 目标用独立只读副本合规强合规项目叠加增强备份保留锁 气隙保险库 跨项目恢复治理以 Terraform 管理备份配置deletion_protection true防止 IaC 误销毁同时按最小权限划分备份/恢复操作者角色。以上内容均可在当前仓库中继续深入灾备参考文档、核心概念、CLI 用法、Terraform 配置 与 IAM 安全 均位于skills/cloud/cloud-sql-basics/目录下。【免费下载链接】skillsAgent Skills for Google products and technologies项目地址: https://gitcode.com/GitHub_Trending/skills29/skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价