时间点恢复功能适用于 WordPress 和 WooCommerce 网站,可以让您将数据库重建为所选某一分钟时的状态,而不仅仅是昨天备份运行那一刻的状态。本指南将介绍该功能涵盖的范围和不涵盖的范围、如何启用它、如何请求恢复,以及恢复操作究竟会影响哪些内容。
用途说明
每日备份只能为您提供每天一个恢复点。这对于大多数灾难情况来说是足够的,但对于某个特定情况却毫无用处:例如在下午 2:15 发生了错误的导入、损坏的插件或错误的批量编辑,而您在下午 4 点才发现。恢复昨天的备份会连同错误一起丢弃整个上午的真实工作成果。
时间点恢复正是为了解决这一问题。启用后,数据库的变更日志会持续发送到异地存储,这样恢复操作就可以回放到保留时间窗口内的任意一分钟。
该功能在 KPanel 中的位置
- 登录 KPanel。
- 点击左侧边栏中的网站,然后点击相应的站点。
- 在该站点的左侧菜单中,打开备份,然后打开时间点恢复。
直接访问地址为 /websites/<site-id>/pitr。

使用资格
时间点恢复功能需要同时满足两个条件。
您的套餐必须包含此功能。 该功能适用于 WordPress 套餐系列。
该站点必须是 WordPress 或 WooCommerce 站点,因为此机制依赖于受管数据库。
如果不满足上述任一条件,页面会明确说明:时间点恢复功能仅适用于具有受管数据库的 WordPress 和 WooCommerce 站点。在这种情况下没有任何可配置项。
启用方法
PITR 状态卡片会显示当前状态(以状态标签形式)、所使用的后端、上一次变更日志发送的时间,以及以天为单位的保留时间窗口。
点击启用 PITR即可开启该功能。保留期为 30 天。
启用此功能不会对您的数据做任何改动。它会启动一个持续发送的过程,与您正常的每日备份并行运行,但不会取代每日备份。
启用后不会立即出现恢复点。发送过程必须至少成功运行一次,才能进行任何回放操作,首次发送会在大约五分钟内完成。在此之前,页面会提示您尚无可用的恢复点。
查看可用恢复时间窗口
一旦发送过程开始运行,可用恢复时间窗口卡片会显示您可以恢复到的最早和最晚时刻,以及为覆盖该时间段而保留的变更日志文件数量。
请在真正需要之前先查看此信息,而不要等到事故发生时才查看。如果时间窗口的起点比您预期的要晚,说明发送过程在某个时刻曾被中断,较早的覆盖范围已经过期。
请求恢复
- 打开时间点恢复标签页。
- 确认恢复时间窗口涵盖您所需要的时刻。
- 在恢复到时间戳中,选择日期和时间。请选择损坏发生之前的时刻,而不是之后的时刻。
- 点击请求恢复到暂存数据库。
请求会立即进行验证。如果时间戳超出了可用时间窗口,系统会直接告知您确切的时间窗口,而不会让您自行猜测。
恢复操作的实际效果
这一部分需要特别准确地说明,因为它与大多数人的预期恰恰相反。
时间点恢复不会触及您的线上数据库。 它会恢复到一个单独创建的暂存数据库中,该数据库专为此次恢复而创建,并以您的域名和目标日期命名。在整个过程中,您的线上网站会一直在自己的数据库上持续运行,不受任何影响。
请求恢复不会覆盖任何数据,不会删除任何数据,也不会导致任何数据丢失。这是刻意设计的:数据恢复工具的核心意义就在于,使用它绝不会让情况变得更糟。
您最终得到的是一个可供检查的数据库。您可以将其与线上数据库进行比较,提取出受损的数据行,或者决定将整个快照作为您想要的版本。将暂存恢复结果切换为线上数据库是一个独立的、需要我们团队与您共同完成的审慎步骤,而不是靠按一个按钮就能在后台自动完成的操作。
切换到已恢复的数据库,确实会丢弃自恢复点以来写入线上数据库的所有内容。在该时间戳之后下的订单、留下的评论以及编辑的内容,都只存在于线上数据库中。在进行任何切换之前,请先确定哪些内容必须保留下来,并明确告知我们。这正是恢复操作会先落地到暂存环境的原因。
跟踪请求状态
每一次请求都会出现在恢复请求表格中:
| 列 | 显示内容 |
|---|---|
| Requested | 您发出请求的时间 |
| Target | 您请求恢复到的时间戳 |
| Status | 请求当前所处的阶段 |
| 暂存数据库 | 正在恢复到的数据库名称 |
在恢复过程进行期间,状态会显示当前所处的阶段,一旦回放开始,还会显示已应用的变更日志文件数量占总数的比例。失败的请求会在下方显示错误信息。
每个站点同一时间只能有一个恢复操作在进行中。如果在一个请求正在运行时又提出第二个请求,系统会返回冲突提示而不会将其排队,这样第二次尝试就不会破坏第一次的结果。
我们的工程团队会完成暂存恢复操作,并在暂存数据库准备就绪时通过电子邮件通知您。您在请求被接收时也会收到一封确认邮件,其中包含目标时间戳和暂存数据库名称。
选择合适的时间戳
确定损坏开始的时间,而不是您发现问题的时间。 这两者通常相差数小时。请查看您的活动日志、订单时间戳,或最后一次已知良好的内容编辑记录。
将时间点设定为提前一两分钟。 选取一个恰好在问题发生之前的恢复点,只会让您损失几分钟的正常写入数据。而选取一个恰好在问题之后的恢复点,则会连同损坏内容一起全部恢复。
记录下恢复点之后发生的事情。 包括订单、注册、评论、表单提交等。如果您决定进行切换,这份清单就是您需要手动补充的内容。
故障排查
页面提示 PITR 仅适用于 WordPress 和 WooCommerce。 要么该站点不属于这两种类型,要么您的套餐不包含此功能。
尚无恢复点。 启用后发送过程必须至少成功运行一次。首次发送会在大约五分钟内完成。
我的目标时间超出了可用时间窗口。 保留期为 30 天,如果发送过程曾被中断,时间窗口可能会更短。错误信息会说明确切的边界。如果您需要的时刻已超出保留期,请改用每日备份:请参阅从备份恢复。
已有恢复操作在进行中。 请等待其完成。表格会显示其所处阶段和进度。
状态显示了一条关于发送程序的提示信息。 您的请求已被记录,提示信息说明了当前状态。不会有任何数据丢失。
我需要恢复的是文件,而不是数据库。 PITR 无法帮助您。请使用文件备份,并且请注意,已完成的备份可以逐个文件浏览,而不必整体恢复。
相关页面
如果您正处于事故处理过程中,不确定应使用哪种工具,请通过 KPanel 中的支持与我们联系,或发送电子邮件至 support@kapsulehost.com,并注明站点名称和问题发生的时间。