用Node.js云函数通过Cloud SQL Admin API备份实例:是否需停实例?
Cloud SQL 备份是否需要停止实例?
官方完全不要求备份前停止Cloud SQL实例,反而实例必须处于运行状态才能完成导出(备份)操作。你停实例后备份失败就是因为这个原因——导出过程需要实例在线来读取数据、生成备份文件并同步到Cloud Storage。
从你提到的Cloud SQL Admin API v1beta4导出文档内容来看,导出请求的核心前提是目标实例处于
RUNNING状态。API执行导出时,会触发实例创建数据快照并导出,整个流程依赖实例正常运行,停止实例后API无法建立连接,自然会失败。如果你担心备份的一致性问题,官方有更合理的方案:
- 开启Cloud SQL的自动备份功能,系统会在指定窗口自动执行备份,无需手动干预,且自动备份会保证数据一致性。
- 手动导出时,可通过API参数设置
sqlExportOptions.transactional为true(针对MySQL实例),这样会通过事务来保证导出数据的一致性,完全不需要停实例。
内容的提问来源于stack exchange,提问作者Kastel
相关产品推荐
相关产品推荐

