AI 观察

因为没备份,我的博客数据全丢了

逍十一郎逍十一郎
2026年7月6日
30

因为没备份,我的博客数据全丢了

一次部署事故

前段时间我在重构个人博客,顺便修复一些遗留问题。整个过程主要借助 AI 辅助,包括修改模板、添加页面、调整路由等,效率很高。

问题出在部署环节。我让 AI 协助部署到服务器,不知具体是哪一步操作,部署完成后网站内容全部变成了测试数据。数据库被覆盖了,本地用于测试的一个 SQLite 文件替换了原来的文件。

不幸的是,我没有进行过备份,所以那些数据无法找回了。

失去了什么

博客内容不算多,但也是好几年的积累。其中有平时写的技术笔记,有下班后随手记录的日常和想法,还有一些读书笔记和投资学习心得。

这些内容虽谈不上重要,不能带来收益,流量也不大,更没有读者催促更新,但都是我花心思一字一句写出来的。就这样丢失了,确实觉得很可惜。

我尝试过恢复,但服务器和本地都没有备份,版本控制也派不上用场。SQLite 虽然使用方便,但它的文件特性意味着一旦丢失就是全部丢失,之前我完全没意识到这个风险。

为什么没有备份

原因很简单,一是懒惰,二是存在侥幸心理。

一开始想着先让网站运行起来,备份的事以后再说。后来网站顺利运行,一直没出问题,备份的事就彻底被我忘了。网站经历过几次改版,数据从未出现过意外,渐渐就觉得不会有问题。

用 AI 编写代码时,我也没想到 AI 会改动数据库。按我的理解,AI 应该只修改代码,不会触碰数据文件。但实际执行部署时,可能是部署脚本的问题,导致本地数据库被直接上传并覆盖了服务器上的文件。

当然,核心问题还是我把部署权限交给了 AI,却没有对数据采取任何保护措施。

后续措施

这次事件让我重新审视了备份策略。目前我采取了三项措施:

  1. 重新整理了所有代码,并修改了脚本,确保每次部署代码前,都会先备份服务端的数据,然后再进行部署。
  2. 修改了权限和相关规则,防止 AI 对数据库进行改动或覆盖操作。
  3. 后续计划研究使用 GitHub 脚本实现自动化,在代码发生改动时,能够自动完成部署和备份。

一点建议

备份这件事,性质和保险类似。没出事的时候觉得没必要,出事后才发现为时已晚。

不仅是网站,电脑也是如此。一旦硬盘损坏,存储的内容就会全部丢失(最近有新闻说 AI 是硬盘杀手,疯狂读写),这些都需要考虑备份。

不要等东西丢失了,才开始重视备份问题。

评论讨论

评论需要审核后才能显示