同步工具选择 - 让数据库在多设备间流动
为什么 KeePassDX 不内置同步
KeePassDX 是文件编辑器,它故意不做同步功能。原因:
- 同步有很多方案(云、P2P、手动复制),没有统一最佳答案
- 每个同步方案都有自己的冲突解决逻辑,会和 KeePassDX 的数据库格式产生复杂交互
- 内置同步等于绑定某个云服务商,违背"本地优先"的设计
三种主流同步方式
方式一:Syncthing(推荐)
类型:P2P 文件同步,无中央服务器
Syncthing 是最适合 KeePassDX 的同步工具:
- 无云依赖:设备之间直接 P2P 通信,数据不经过任何第三方服务器
- 加密传输:设备间通信全程 TLS 加密
- 冲突检测:同时修改时保留两个版本,由 KeePassDX 手动合并
- 支持 Android + Windows + macOS:跨平台覆盖
- F-Droid 可下载:开源无广告
工作流
- 在 Android 和 Windows 上都装 Syncthing
- 配对两个设备
- 创建同步文件夹
- 把 .kdbx 文件放在同步文件夹里
- 任何一边修改后,Syncthing 自动同步到另一边
优点
- 真正的去中心化,你的文件从不上传到第三方服务器
- 实时双向同步,基本零延迟
- 自动处理文件冲突(保留双方版本)
缺点
- 需要两个设备同时在线
- 首次同步速度取决于网络带宽
- 配置比云存储稍复杂
方式二:自托管云存储
类型:自建 Nextcloud / Seafile / OwnCloud 等
如果你已经有自托管云服务,这是最简单的选择:
- 把 .kdbx 文件上传到你的 Nextcloud
- 手机上装 Nextcloud Android App
- 开启文件自动同步
- KeePassDX 通过 Nextcloud 文件提供者访问 .kdbx 文件
优点
- 配置简单
- 任何设备随时访问
- 版本历史(Nextcloud 自带文件版本)
缺点
- 文件经过云服务器(虽然是你自己的)
- 云服务器成本
- 如果用公共云存储(如坚果云、阿里云盘),数据会经过第三方
方式三:手动复制
类型:USB 数据线 / U 盘 / 蓝牙传输
最简单但最麻烦的方式:
- 电脑上编辑 .kdbx → 保存
- 用 USB 线连手机 → 复制文件到手机
- 手机上打开 KeePassDX → 选择新文件位置
适合场景
- 偶尔同步
- 不想安装同步工具
- 安全要求极高(彻底离线)
避免同步冲突
无论用哪种同步方式,以下习惯能最大限度减少冲突:
- 一次只在一台设备上打开数据库并修改——改完保存后,等同步完成再在另一台设备上打开
- 关闭数据库后再等同步——KeePassDX 关闭数据库时会写回最终版本,这是同步的最佳时机
- 不要两台设备同时开着数据库——即使都只是浏览,也不会产生冲突(因为浏览不修改文件),但同时编辑就会
冲突处理
万一两台设备同时修改并保存,同步工具会检测到冲突:
- Syncthing:保留两个版本,文件名加
.syncthing-conflict-...后缀 - Nextcloud:保留两个版本,文件名加
(冲突副本)后缀 - 手动复制:后复制的覆盖先复制的(可能丢失数据)
处理冲突:
- 把两个版本的 .kdbx 都用 KeePassDX 打开(各开一个数据库)
- 对比哪个版本包含你需要的修改
- 手动在正确版本里补另一个版本的新条目
- 删除冲突版本文件
- 同步工具恢复正常