jsonscraper

Cloudflare D1 数据库删除后仅可在七天内恢复

Cloudflare 调整了已删除数据库的恢复期限。本文介绍 undelete 请求的工作方式,以及数据库恢复与 Time Travel 的适用范围。

编辑政策 报告错误

不小心删除了 Cloudflare D1 数据库?现在只能在删除后的七天内通过 API 恢复。Cloudflare 于 2026 年 10 月 23 日公布了这一变更:删除超过七天的数据库,其恢复请求会失败。发生事故时,请核实数据库 ID,并尽快提交 undelete 请求。

文章:Cloudflare D1 数据库删除后仅可在七天内恢复
摘要:自 2026 年 10 月 23 日起,Cloudflare D1 只接受删除后七天内提交的数据库恢复请求。调用 API 前,请核对时间、数据库 ID 和名称是否冲突。
图片用途:封面——核心概念
章节:
视觉主题:Cloudflare D1 数据库恢复概念,数据库记录在七天的日历窗口内从删除状态恢复,简洁的技术插画
© jsonscraper · AI 生成插图

变更内容

恢复方法需要账户 ID 和已删除数据库的 UUID;也可以在请求正文中传入新名称。默认情况下,数据库会以原名称恢复。如果账户中已有其他数据库使用该名称,则必须指定 new_name 才能恢复。相关条件列于 D1 undelete API 参考文档中。

期限为七天,即 7 × 24 小时。因此,仅记录日历日期并不足够:请记录删除时间,并将其与请求提交时间进行比较。如果期限将至,应先提交恢复请求,再检查名称和数据。

操作步骤

  1. 找到已删除的数据库。根据日志、基础设施代码或事故记录,核实 account ID 和 database ID。API 路径使用数据库 UUID;仅凭数据库显示名称不足以发起请求。
  2. 检查时间窗口。确认删除后尚未满七天。Cloudflare 建议在发现误删后立即提交请求。
  3. 处理名称冲突。如果原名称已被使用,请通过 new_name 传入一个可用名称;否则无需更改名称。
  4. 调用文档所述方法。API 使用 POST /accounts/{account_id}/d1/database/{database_id}/undelete。使用具备所需权限的 API 令牌进行授权,并勿将密钥写入日志。
  5. 检查结果。请求成功后,确认数据库已在账户中以预期名称出现,并检查应用是否连接到了正确的实例。

Undelete 与 Time Travel 用途不同

Undelete 用于恢复已删除的数据库。Time Travel 则根据时间点或 bookmark 恢复现有数据库的状态。Cloudflare 文档指出,历史记录最长可追溯至过去 30 天;实际保留期限取决于套餐。执行 undelete 后,Time Travel 无法将数据库恢复到恢复操作之前的标记或时间点。若运行中的数据库数据出错,请使用 Time Travel;若数据库已被删除,则应在规定期限内使用 undelete。

在运维流程中加入七天窗口检查,并在事故日志中同时记录数据库 ID 和删除时间。这样有助于尽快提交正确的请求,避免浪费时间查找标识符或排查名称冲突。

People

No people listed for this article yet.

Keep reading如何分析 TikTok 创作者主题:Python 实用流程
Read the next article

将阅读内容转化为可用的集成

探索 jsonscraper 社交数据 API、测试请求并构建下一个工作流。

查看 API