三种备份与恢复方法:内置打包、SQLite 直备与外接数据库
站点跑久了,存储配置、用户、设置都是心血,备份要形成习惯。OpenList 给了三条路,按需选择。

方法一:内置备份 / 恢复(推荐日常用)
后台管理里直接点:
- 备份:导出一份包含站点数据(存储、用户、设置)的备份文件到本地
- 恢复:上传备份文件还原;勾选「覆盖」会把用户信息一并覆盖
- 加密:导出时填「加密密码」则备份文件加密,恢复时需先输同一个密码
注意:内置备份不包含搜索索引——恢复后重建索引即可(见 搜索索引),这是设计使然而不是缺陷。
方法二:直接备 SQLite 数据库(含索引)
数据都在 data/data.db 一个文件里,停服后整文件拷走:
- 先停止 OpenList 再备份——停服能让数据库把日志合并完,文件干净
- 新版本目录里若同时存在
data.db-shm与data.db-wal两个伴生文件(SQLite WAL 模式的临时文件,别手贱删),三个文件一起备份、一起恢复 - 恢复就是反过来:替换文件、启动程序

含索引数据,是最完整的备份方式,也最适合「整站搬家」。
方法三:外接数据库自行处理
用 MySQL / Postgres 的用户(见 config.json),备份走数据库自身的 dump 工具,包含索引数据,OpenList 不另提供打包。
建议节奏
- 日常:每月一次内置备份(加密)放到别的机器
- 大改前(批量改存储、升级大版本前):停服直备 data.db
- 升级程序本身不等于备份:程序文件随时可下,值钱的只有 data 目录——这也呼应了 Docker 数据目录映射 的意义
从 AList 迁移到 OpenList 时的配置搬运,用的也是同一套「备份 → 恢复」流程,见 AList 迁移。