备份并恢复 Zotero 数据目录与误删记录

来源:Zotero 官方文档《The Zotero Data Directory》。原文无个人署名;本文由未完纪依据全文翻译整理,核对日期为 2026 年 10 月 5 日。界面名称以原文英文为参照,不同版本的中文译名可能有差异。

Zotero 的书目、笔记和附件并不全放在同一个文件里。恢复资料之前,先确定正在使用哪个数据目录,再区分数据库、托管附件、链接文件和在线同步的职责。最重要的原则是:移动、复制或替换数据库前关闭 Zotero;如果误删已经同步,恢复前还要暂停自动同步。

Zotero 数据恢复流程:确认数据目录、暂停同步并关闭应用、保留原目录、恢复数据库和附件、检查后决定同步策略;链接附件需单独备份。
原创技术示意图:恢复过程中的数据与同步边界。图中不是软件截图。

找到实际使用的数据目录

最可靠的方法是在 Zotero 设置的 Advanced(高级)页点击 Show Data Directory(显示数据目录)。它会打开当前实际使用的目录,比凭记忆猜路径可靠。如果设置页面无法打开,可以在自己的电脑上搜索 zotero.sqlite,再结合文件日期和大小辨别。

系统 现代版本默认目录
macOS /Users/<username>/Zotero
Windows 7 及以上 C:\Users\<User Name>\Zotero
Linux ~/Zotero
Windows XP/2000(历史资料) C:\Documents and Settings\<username>\Zotero

只有未指定自定义目录时,上表才适用。原文还保留了 Zotero 4(2017 年及以前)的旧路径:Firefox 扩展版位于 Firefox 的 profile 中,独立版位于 Zotero 的 profile 中。

旧版本 macOS/Windows/Linux 路径
Zotero 4 for Firefox ~/Library/Application Support/Firefox/Profiles/<randomstring>/zotero
%APPDATA%\Mozilla\Firefox\Profiles\<randomstring>\zotero
~/.mozilla/firefox/Profiles/<randomstring>/zotero
Zotero 4 Standalone ~/Library/Application Support/Zotero/Profiles/<randomstring>/zotero
%APPDATA%\Zotero\Zotero\Profiles\<randomstring>\zotero
~/.zotero/Profiles/<randomstring>/zotero

这里用 %APPDATA% 合并表示原文两代 Windows 的 Roaming/Application Data 路径,属于编辑缩写。macOS 的用户 Library 默认隐藏,可在 Finder 的“前往”菜单中按住 Option 找到。旧路径仅用于寻找遗留资料,不是安装旧版软件的建议。

目录里分别存了什么

  • zotero.sqlite 是最重要的数据库,包含书目信息、笔记、标签等大多数结构化数据。Zotero 启动时读取活动数据目录里的这个文件。
  • storage 的八字符子目录(例如 N7SMB24A)保存导入的 PDF、网页快照、音频等托管附件。通过链接方式加入的文件不会复制到这里,必须另行备份它们的真实位置。
  • zotero.sqlite-wal 与 zotero.sqlite-shm 是应用运行时的临时数据库文件。正常退出后 WAL 通常被清空;异常退出时,它可能仍含尚未合并的最新变更。不要随意删除 WAL;移动这样的数据库时,要连同它一起保留。
  • zotero.sqlite.bak 与 zotero.sqlite.1.bak 是自动数据库备份,默认最多每天生成一次。多数 Mac 上它们利用 APFS 写时复制,只有与主库不同的部分占用额外空间。它们不是附件备份。
  • fulltext.sqlite 是全文检索索引,可自动重建,因此不按数据库备份处理。locate、logs、pipes、styles、translators 等目录由 Zotero 启动时维护。

文件操作边界:复制、删除或移动这些文件之前,务必关闭 Zotero。在应用仍写入数据库时拼凑备份,可能得到不一致的数据,甚至损坏当前资料库。下文采用保留旧目录的方式,避免把“恢复”变成不可撤回的覆盖。

建立能回到过去的备份

Zotero 同步很适合在电脑丢失后取回在线资料,但它保存的是资料库的最新状态。一次自动同步也可能把误删同步上去,所以同步不能替代具有历史版本的备份。原文建议用定期、增量的全盘备份工具,将数据备份到外置设备,例如 macOS 的 Time Machine。

如果只备份 Zotero:先找到数据目录,正常关闭应用,再把整个目录复制到备份位置,最好是另一块存储设备。不要只复制 zotero.sqlite 而漏掉 storage、其他子目录及必要的 WAL。链接附件另外处理。

使用“按需下载文件”时,本机未必已有所有附件。若希望备份包含完整附件,可选一台电脑使用“同步时下载文件”,确认文件下载完成后,再备份该电脑的数据目录。即使信任 Zotero Storage 中已经上传的文件,选择不备份 storage 也应是明确的数据策略,不能把目录存在误认为附件已经齐全。

不要用导出再导入代替备份。Zotero RDF、BibTeX、RIS 等用于交换资料,不会生成完全一致的资料库副本:导入后可能重设加入/修改时间,并破坏文字处理文档中已有引用与条目的关联。

先判断应该从哪里恢复

资料库突然变空,首先确认 Zotero 指向正确目录。不要立刻建立新库、覆盖数据库或反复同步。然后选择适合的恢复路径:

  • 在线资料正确、本地确实是空库:可以从同步恢复。
  • 拥有完整数据目录备份:用备份恢复数据库和本地附件。
  • 刚发生误删、没有另存目录:尝试自动 .bak 数据库备份。
  • 升级后希望回到旧版:必须找升级前的数据库备份,不能直接用旧程序打开已升级数据库。

从 Zotero 同步恢复

先登录 zotero.org 检查在线资料是否完整,再在 Zotero 的 Sync 设置填写相应账号,点击工具栏的同步按钮。Zotero 同步的是明确发生的删除操作;仅仅用一个空数据库同步,并不会自动删除在线库。因此“本地空了”与“本地执行过删除并同步”是两种不同情况。

原文允许在关闭 Zotero 后删除旧本地目录,再从服务器同步。本文采用更易回退的编辑调整:先给旧目录改名并保存,确认不再需要其中尚未同步的资料后再决定是否清理。切换同步账号时,Zotero 也可能提示移除当前本地数据库;必须先确认账号与本地未同步内容。

从完整目录备份恢复

  1. 打开 Advanced 设置,记下 Data Directory Location 的路径,并用 Show Data Directory 确认目录内容。
  2. 若涉及已经同步的误删,先关闭自动同步。随后退出 Zotero。
  3. 进入数据目录的父目录,把当前目录改名,例如 Zotero-Old。不要直接覆盖它。
  4. 将备份的数据目录复制到原位置,并使用原目录名。这里放的是包含 zotero.sqlite 和 storage 的目录,不是只放 storage。
  5. 重新打开 Zotero,检查条目、笔记、分类、标签和代表性的附件。

恢复成功后仍建议保留 Zotero-Old 一段时间。若随后同步,备份之后已上传的变更还会应用到刚恢复的数据库;这既能取回后续新增数据,也可能重新执行你想撤销的删除。是否同步必须结合下一节判断。

误删已经同步时,如何保住恢复内容

先临时停用自动同步,再恢复本地备份。此时直接同步通常会让在线的新状态再次覆盖恢复出的旧状态,不能把“恢复后又消失”误认为备份无效。

  • 少量条目或笔记:在恢复出的条目上右键选择 Duplicate Item(s),制作新的副本。同步会再次删除旧记录,但新副本会保留。原文还给出另一办法:进行本地修改(如把条目加入分类)触发冲突,然后在同步冲突解决时选择本地版本。冲突方法需要逐项核对,不应假设所有修改都会产生相同提示。
  • 被删的分类:建立新的分类,把原分类中的条目拖进去。同步后旧分类可能仍会被删除,新分类则可保留。
  • 大范围错误:可使用 Replace Online Library,用本地版本强制覆盖在线资料。它可能丢失备份之后的其他变化;使用前必须确认所有相关设备及协作资料的状态,保留恢复前后副本。

确认结果符合预期后再恢复自动同步。复制条目会建立新的记录身份,不应把它当成对旧引用关系的无损修复;已有论文中的引用需要检查。这里的引用检查是编辑补充。

使用最后一次自动备份

自动备份只包含数据库,不包含附件。在严重误删后,先暂停自动同步,并给所有 zotero.sqlite*.bak 另存副本。按时间戳选择可能包含所需数据的备份,避免在试错过程中把唯一可用备份耗掉。

  1. 关闭 Zotero。
  2. 将当前 zotero.sqlite 改名为 zotero.sqlite.old,保留原件。
  3. 把选定的 .bak 备份副本放到活动目录,并命名为 zotero.sqlite。本文建议使用副本来尝试,这是比直接改名原备份更便于回退的编辑调整。
  4. 启动 Zotero 检查资料。若删除已同步,按上一节处理条目/分类副本或在线库替换,之后才恢复同步。

保留 zotero.sqlite.old 和备份副本,直到确认所有电脑都同步正确、所有必要附件也都能打开。若原库异常退出,不要随意丢掉与它配套的 WAL;应先保全整套原始文件,避免将不同时点的数据库和 WAL 混放。

从升级前的备份回到旧版

重大版本升级会更新数据库格式。若必须退回旧版,需要用升级时自动生成的数据库备份替换当前数据库,通常是编号最高的 zotero.sqlite.[num].bak。先备份整个数据目录,再安装对应旧版、关闭 Zotero、恢复数据库、重新启动;旧版直接打开新格式数据库会报错。

已使用同步时,恢复旧库之后可以通过同步取回兼容的数据;未使用同步时,可先将升级后新增条目导出为 Zotero RDF,再导入旧版。按 Date Added 排序能帮助找出新增内容。这里的导出只是补救少量新增数据,仍不等于完整保真备份。

原文给出在高级 Config Editor 将 app.update.auto 设为 false 以暂缓更新的做法。旧版会失去支持,并可能停止同步或网站兼容更新,因此应向 Zotero 论坛说明降级原因、定期检查修复进度,并在条件允许后恢复更新。

资料不见了,但不知道备份在哪里

先排除三类情况:2017 年及以前的极旧版本刚升级,可阅读 Zotero 5 升级后数据丢失说明;换电脑后数据不在在线库中,可能是原电脑从未上传;同一台电脑曾有资料,则需要检查数据库是否被移动、删除或目录设置改变。

用 Show Data Directory 查看当前目录,记下所有 zotero.sqlite 开头文件的名称、大小和日期。原文指出,空库通常约为 1 MB 或 5 MB;这只是排查线索,不能仅凭大小判断内容。查看 storage 的目录日期是否与过去使用时间相符。

  • 如果附件目录还在,但主库很小,可能是数据库被外部清理工具等删除。寻找较大的 .bak 或其他备份中的 zotero.sqlite。仅凭 storage 文件无法完整重建原资料库。SQLite 文件也不能通过 File → Import 导入;必须在关闭应用后放回活动目录的正确文件名。
  • 如果此前启用同步,可取回在线库中的数据。有备份时会下载备份之后的变更;空库则会下载整个在线库。仍要区分取回新数据与撤销已同步误删的目的。
  • 如果目录不是预期位置,或 storage 不存在/为空,寻找原数据目录,再在设置中选中它,或者关闭 Zotero 后把当前目录改名、把所需目录放回。

寻找时可结合大于 5 MB 的数据库/备份、修改日期和附件目录日期。除非确有理由,原文建议采用用户主目录下的默认位置。选择自定义目录不会自动移动任何数据;仍需自己复制,并指向包含数据库和 storage 的上级目录。

仍无法定位时,在 Zotero 论坛提供:当前数据库及备份的文件名、大小和日期;是否有符合旧使用时间的附件子目录;是否使用默认路径;上次正常使用时间、之后发生过什么,以及已经尝试的操作。只提供诊断所需信息,不要公开上传私人论文、完整数据库或账号凭据。

如果找不到其他 zotero.sqlite 副本,也从未使用 Zotero 同步,可能只能重新建立资料库。先关闭 Zotero,把原数据目录移到桌面并命名为“Zotero Old”,保留整套文件;重新启动后会建立新库。可以在旧目录中搜索所有 PDF 并拖入 Zotero,让它尽可能检索元数据。还可使用 Reference Extractor 从曾使用 Zotero 插件的 Word 或 LibreOffice 文档提取资料,但重新导入的记录不会与已有文档引用保持原来的关联。这是原文的最后补救路径,不是完整恢复。

来源、署名和验证范围

本文依据官方全文整理,保留了定位、备份、同步恢复、目录恢复、误删、自动备份、升级备份和丢失资料定位等全部主题。删除改为先保留副本、引用关联检查及隐私提醒属于编辑补充。原作者与 Zotero 的权利归属保持不变。Zotero Licensing 说明:2015 年 4 月 26 日之后产生的 wiki 内容使用 CC BY-SA 4.0;更早内容可能使用 CC BY-NC-SA 3.0。本文保留该历史许可说明,不把软件 AGPL 许可套用到文档。可适用 CC BY-SA 4.0 的中文改编部分及本文原创图按 CC BY-SA 4.0 提供;历史部分的权利依原许可与另行授权保留。

本次仅进行资料和操作流程的静态核对,没有打开用户 Zotero 数据库、恢复文件、切换账号或执行同步;不能据此声称恢复演练已经通过。原创配图由未完纪制作。

Zotero 由非营利组织 Digital Scholar 发起,并由全球社区开发。文档许可历史:2015-04-26 之后的 wiki 内容为 CC BY-SA 4.0;更早内容可能为 CC BY-NC-SA 3.0。原站要求商业使用核对修订历史与 Wiki Contributor License Agreement。本文保留该历史说明;原资料按适用许可提供,无保证。中文翻译与编辑:未完纪,2026-10-05。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容