本问题排查指南介绍了您在使用 AlloyDB for PostgreSQL 备份、恢复和复制功能时可能会遇到的常见问题。还提供了建议的解决方法。
您想恢复已删除的集群
说明:在 AlloyDB 中,按需备份和自动备份都独立于您要恢复的集群。即使您用于创建备份的集群已被删除,您也可以将数据从备份恢复到新的 AlloyDB 集群。存储层负责处理 AlloyDB 备份。此外,数据库在备份过程中不会锁定,从而确保持续可用性。
AlloyDB 中的备份恢复是异地恢复,这意味着您将备份恢复到新集群,而不是覆盖现有集群。恢复集群后,您可以向恢复的集群添加新的主实例或读取池实例。
使用时间点恢复 (PITR) 功能恢复集群时,您只能从配置的恢复时间范围内的时间点恢复集群。您必须选择集群拥有实例的时间戳。
建议的修复方法: 从存储的备份恢复集群。
默认情况下,AlloyDB 会持续备份您的数据,恢复时段为 14 天。如果您重新配置备份方案,持续备份和恢复功能可能需要长达 24 小时才能创建备份并启用持续恢复功能。
如果您需要有关此问题的帮助,请与 Google Cloud 支持团队联系。
您不知道如何查找备份
说明:出于安全性和可访问性考虑,备份与集群存储空间分开存储。
建议的修正措施:使用以下界面查找备份:
界面 | 查找备份 |
---|---|
Google Cloud 控制台 | 查看项目中的备份列表。 |
Google Cloud CLI | 查看项目中的备份列表。 |
REST API | 使用 projects.locations.backups.list 方法,该方法可让您列出指定项目和位置中的所有备份。
|
您想执行 PITR,但无法选择时间
说明:AlloyDB 提供 PITR 作为其持续备份和恢复的一部分。对于 PITR 至关重要的事务日志会分流到 Cloud Storage,这可确保日志不会影响集群的大小或性能。
您可能无法为 PITR 选择特定时间,原因如下:
- 您要恢复的集群不存在。您无法使用 PITR 恢复已删除的集群。
- 未启用持续备份功能。PITR 依赖于预写式日志 (WAL),只有在启用持续备份功能时才会收集这些日志。
- 备份恢复点早于最早的连续备份的日期。
- 您未选择集群包含实例的时间戳。
建议的解决方法:为 PITR 选择特定时间。
请尝试以下解决方法:
- 验证要恢复的集群是否存在。如果集群存在,请按照使用时间点恢复 (PITR) 中的步骤操作。
- 检查集群是否已启用持续备份。如果已启用持续备份,请按照使用时间点恢复 (PITR) 中的步骤操作。
- 检查您要恢复备份的时间是否在配置的恢复时段内。默认情况下,AlloyDB 会持续备份您的数据,恢复期为 14 天。如需了解详情,请参阅配置持续备份。
备份内容被意外删除
说明:除非您的保留期配置要求自动删除备份,否则 AlloyDB 备份不会自动删除。备份的保留期限是在备份方案创建备份时确定的,保留期限会在备份创建时写入备份元数据,并且该字段不可变。
备份由备份方案创建,例如持续备份和恢复或自动备份。备份的保留期限在备份方案的配置中定义,可以是默认的 14 天保留期限,也可以是用户配置的保留参数。您无法直接选择保留期限。按需备份的保留期限为 365 天。
建议的修正措施:为避免意外删除备份,请检查备份方案配置。
您需要将备份恢复到其他区域
说明:您只能恢复备份所在区域中的备份,除非您先为原始集群创建新的按需备份。
推荐的修复方法:通过创建原始集群的新按需备份,将集群恢复到新区域:
- 在目标区域中创建新备份。
- 使用新备份在首选区域中执行恢复操作。
AlloyDB 还支持在跨区域副本上进行备份。如果您有跨区域副本,则通过该副本进行备份可以满足许多跨区域备份要求。如需了解详情,请参阅跨区域复制概览。