删除实例后,Cloud SQL 默认保留备份几天?如何延长?

解读

面试官抛出此题,表面问“保留天数”,实则考察三层能力:

  1. 对 Cloud SQL 备份生命周期策略的熟悉度;
  2. 国内数据合规场景(等保、金融行业 15 天以上留存)的敏感度和落地经验;
  3. 能否把“延长保留”拆解为 可操作的配置步骤 并给出 成本-合规-可恢复性 权衡。
    若只答“7 天”而说不出延长方案,会被视为“只背参数、不会运维”。

知识点

  1. 默认保留期:自动备份在实例删除后仅保留 7 天,且这 7 天仍按 备份存储计费
  2. 延长机制:
    a. 事前——在实例存活期就把“自动备份保留天数”调到 30 或 365 天(上限因版本而异),删除实例后仍按该天数继续保留;
    b. 事后——删除前手动创建最终备份(Final Backup),命名需符合企业标签规范,该备份 不会随实例删除而失效,可单独保留 最长 365 天
    c. 跨地域长期归档——把备份导出到 Cloud Storage 多区域桶,再通过 Bucket Lifecycle Rule 转存至 Nearline/Coldline/Archive,实现 7 年甚至更长留存,满足国内券商、保险等合规要求;
  3. 权限模型:只有 roles/cloudsql.adminroles/cloudsql.editor 才能调整保留期与创建最终备份;
  4. 费用陷阱:备份保留超 30 天后,每 GiB/月价格与 SSD 实例盘同价,面试时需主动提到“成本评估+定期清理”才是成熟方案;
  5. 国内特例:若项目加入 Google Cloud 中国合作伙伴运营专区(例如光环新网/神通),备份保留上限仍为 365 天,但出入境数据审计需提前完成,否则无法跨域导出到 GCS。

答案

默认仅保留 7 天
延长办法分三步:
① 实例删除前,进入“备份”页把自动备份保留天数设为 30 或 365 天
② 同时点击**“创建最终备份”,命名带业务线+日期+保留原因,该备份独立于实例生命周期**;
③ 若合规要求超过 365 天,用 gcloud sql export bak 将备份 dump 到 Cloud Storage,加 Bucket Lifecycle 转冷线存储,最长可留存 7 年以上
完成以上步骤后,删除实例,备份仍按设定天数留存并可随时恢复到新实例。

拓展思考

  1. 如果客户要求 “0 天” 即立即销毁,如何强制清除备份?——需先关闭自动备份、手动删除所有备份,再调用 gcloud sql instances delete--async 参数,并确认 Operations 状态为 DONE,否则 7 天内仍计费。
  2. 国内 双录合规 场景下,审计员要抽查 3 年前的数据,如何快速定位备份?——建议在创建备份时打上 符合金融标签规范的 labels={project:xxx, biz:xxx, retention:3y},再通过 gcloud sql backups list --filter="labels.retention=3y" 一键检索。
  3. 面试反向提问:可以问面试官“贵公司备份保留 SLA 是多少天?是否已开通 Cloud Storage Archive 做长期归档?”体现你不仅懂技术,还懂成本与合规平衡