3x-ui3x-ui
运维

备份与恢复

手动或通过 Telegram 机器人备份并恢复你的 3x-ui 数据库与证书。

你的全部配置——入站、客户端、各项设置——都存放在面板的数据库中。 请定期备份,以便日后恢复或迁移。

需要备份的内容

  • 数据库 —— 默认为位于 /etc/x-ui/x-ui.db 的 SQLite(如果你使用 PostgreSQL 后端,则为对应的 PostgreSQL 数据库)。
  • 证书 —— /root/cert/ 下的所有内容(或你存放 TLS 证书的任意位置)。

手动备份

你可以从面板的概览页下载备份,也可以直接从服务器上复制数据库文件:

copy the SQLite database
cp /etc/x-ui/x-ui.db /root/x-ui-backup-$(date +%F).db

要恢复时,先停止面板,把数据库文件放回原位,然后重新启动面板。

尽量将备份恢复到与其来源相同的主版本上。跨主版本升级时,应让面板自行 运行迁移,而不要强行套用旧的数据库结构。

Telegram 备份

如果你已配置 Telegram 机器人,启用 tgBotBackup 即可在周期性报告中附带一份备份(按 tgRunTime 计划执行,默认每天一次)。机器人会将数据库与 Xray 的 config.json 一并发送到你的管理员聊天,从而让你始终拥有一份服务器之外的副本。 管理员也可以从机器人的菜单中按需请求备份。

SQLite 转储 / 恢复

x-ui migrate-db 命令可在 SQLite 数据库与纯文本 SQL 转储之间相互转换 (便于检查,或在不同机器之间转移):

x-ui migrate-db --dump /root/x-ui.sql       # SQLite -> SQL text
x-ui migrate-db --restore /root/x-ui.sql     # SQL text -> SQLite

若想改用 PostgreSQL,请参阅数据库

无论采用哪种方式,都请将备份保存在服务器之外,并不时测试一次恢复—— 未经测试的备份算不上备份。

On this page