时间点恢复 (PITR) 概览
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
Spanner 时间点恢复 (PITR) 可针对
意外删除或写入。例如,如果运维人员意外写入数据或应用发布损坏数据库,您可以无缝地使用 PITR 从过去某个时间点恢复数据(最多 7 天)。如果您需要长期保留数据,可以使用以下任一方法:
备份和恢复或导出和导入。
默认情况下,您的数据库会将数据和架构的所有版本保留为一个
小时。您可以通过
version_retention_period
选项。如需相关说明,请参阅设置保留期限。
Spanner 以微秒粒度存储旧版本数据,
数据库会维护一个 earliest_version_time
,
表示过去可以恢复旧版本的最早时间
数据。
恢复数据的方法
您可以通过以下两种方式恢复数据:
如需恢复数据库的一部分,请执行过时读取,并指定过去的查询条件和时间戳,然后将结果写回实时数据库中。这通常用于在实时数据库的外部维护操作。例如,如果您不小心删除了
特定行,或者错误地更新部分数据,您可以恢复
使用该方法。如需查看相关说明,请参阅恢复数据库的一部分。
如需恢复整个数据库,请通过指定过去时间戳来备份或导出数据库,然后将其恢复或导入至新数据库。这通常用于
从数据损坏问题中恢复
从数据库发送到损坏发生前的时间点请注意,备份或导出数据库可能需要几个小时,您将无法恢复或导入到现有数据库。有关说明,请参阅
恢复整个数据库。
保留期限较长的数据库(尤其是经常覆盖数据的数据库)会使用更多系统资源。这可能会影响数据库的性能,尤其是当您的实例未供应足够的计算容量时。如果您的数据库具有非常高的覆盖率(例如,如果您的数据库每天被覆盖多次),您可以考虑逐渐增加保留期并监控系统。请注意以下事项:
增加了存储空间用量。我们建议您设置存储空间提醒,确保不会超出存储空间上限。如果增加保留期限,请注意,随着数据库不断累积旧版数据,存储空间用量将逐渐增加。这是因为在上一个保留期限下将要过期的旧数据不再过期。例如,如果您将保留期限从 3 天增加到 7 天,则需要等待 4 天才能使数据库存储空间用量稳定。我们还会提供用于估算存储空间增量的说明。
增加了 CPU 使用率和延迟时间。Spanner 使用额外的计算资源来压缩和维护旧版数据。监控您的实例和数据库
以确保延迟时间和 CPU 利用率保持在可接受的水平。
增加了执行架构更新的时间。延长了保留期限
表示架构版本
必须保留更长的时间,这可能会导致架构更新
throttled
等待服务器资源使用请确保您遵循的是
架构更新最佳实践
并且不超出架构更新限制。
价格
使用 PITR 功能无需额外付费。不过,如果您将数据库的版本保留期限从默认的 1 小时延长,则数据库存储空间和计算容量费用可能会增加。您的点播
backup 费用不受影响,因为只有一个版本
数据库的快照。有关详情,请参阅性能
注意事项部分。提高数据库版本之前
保留期限,您可以估算数据库存储空间的预计增加量。
如需了解有关 Spanner 计费方式的一般信息,请参阅
Spanner 价格。
后续步骤
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-09-20。
[{
"type": "thumb-down",
"id": "hardToUnderstand",
"label":"Hard to understand"
},{
"type": "thumb-down",
"id": "incorrectInformationOrSampleCode",
"label":"Incorrect information or sample code"
},{
"type": "thumb-down",
"id": "missingTheInformationSamplesINeed",
"label":"Missing the information/samples I need"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻译问题"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"其他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"易于理解"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"解决了我的问题"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"其他"
}]
{"lastModified": "\u6700\u540e\u66f4\u65b0\u65f6\u95f4 (UTC)\uff1a2024-09-20\u3002"}
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2024-09-20。"]]