← 目录

数据目录与备份

CiteDesk 把文献库和它的附件存在一个数据目录里。理解它在哪里、里面有什么,才能放心备份和迁移。

数据目录在哪里

默认情况下,数据目录就是应用的配置目录。用 帮助 > 打开数据文件夹 可以在访达(或系统的文件管理器)里直接打开它。里面主要有:

  • 文献库数据库(SQLite 文件),文献、分类、标签、笔记、批注都在里面;
  • storage 目录:存进文献库的附件文件,每个附件一个子目录;
  • styles 目录:您导入的样式;
  • backups 目录:数据库的自动备份;
  • 全文索引等可以重建的缓存。

文档本身(Markdown 文件)不在数据目录里,它们在您打开的工作区文件夹里。

在 设置 > 高级 > 数据存储位置 可以改用自定义位置或恢复默认。更改位置不会移动数据。 改完后应用会提示退出,请在应用关闭后自行把整个数据目录移动到新位置,再重新启动。CiteDesk 不会修改旧位置的文件。

启动时,如果设定的位置找不到(例如外接盘没连上),应用会先问您:改用默认位置、重新选择位置,还是退出。它不会悄悄新建一个空库。

数据目录在云盘里

不要把数据目录放在 Dropbox、iCloud、OneDrive、Google Drive 一类的同步文件夹里。数据库由数据库引擎频繁地读写,同步软件在中间复制或加锁,可能让数据库损坏、丢数据,或让同一份数据出现冲突的几个副本。

如果应用检测到数据目录在这类文件夹里,启动时会提醒您,并给出:改到别处、不改,和「不再显示此警告」。要在多台电脑之间同步文献库,请用应用自己的同步,不要同步数据目录。

选择自定义位置时,如果所选文件夹在云盘里,也会有同样的提醒。

自动备份

应用会定期把数据库备份到数据目录的 backups 目录,按轮转的方式留几份。份数和间隔由两项设置 backupNumBackups(默认 2 份)和 backupIntervalMinutes(默认 1440 分钟,即一天)决定,份数小于 1 就不备份;可以在设置「高级」页底部的设置编辑器里修改。内容没变就不会重复备份;合并文献之前总会强制备份一次。备份写不成只记日志,不会阻挡您的操作。

备份不含附件文件,只是数据库。要完整备份,请在应用关着时复制整个数据目录。

从备份恢复

数据库打不开或检查不通过时,文献库页顶会出现一条横幅说明读不进来,并且保存被锁住,以免把坏掉的数据继续写坏。有可用的自动备份时,横幅上有「从自动备份恢复」:应用会先验证那份备份读得进来、版本认得,再把坏掉的那份挪进 backups 目录并标上 .damaged,不删除,最后换上备份。恢复会丢掉备份之后做的改动,所以请先确认。

如果没有可用的备份,请在应用关着时用 SQLite 的工具尝试修复数据库,或者联系帮助您的人。更多情形见故障排除。

数据库正被另一个进程使用

数据库以独占的方式打开。如果同一个数据目录已经被另一个 CiteDesk(或别的程序)开着,应用会提示该数据目录的数据库正在使用中,然后退出,不会去开库。请先关掉另一个实例再重新启动。