📦 导出和导入数据库
如果你需要将你的 Open WebUI 数据(如聊天记录、配置等)从一个服务器迁移到另一个服务器,或者备份以便日后使用,你可以导出和导入数据库。本指南假设你正在使用内部的 SQLite 数据库(而不是 PostgreSQL)运行 Open WebUI。
请按照以下步骤操作来导出和导入包含你数据库的 webui.db
文件。
导出数据库
要从当前的 Open WebUI 实例中导 出数据库:
-
使用
docker cp
命令复制数据库文件:
webui.db
文件位于容器内的/app/backend/data
目录下。运行以下命令将其复制到本地机器:docker cp open-webui:/app/backend/data/webui.db ./webui.db
-
将导出的文件传输到新服务器:
你可以使用 FileZilla 或其他你喜欢的文件传输工具,将webui.db
文件移动到新服务器上。信息推荐使 用 FileZilla,因为它在传输文件到新服务器时非常方便。
导入数据库
将 webui.db
文件移动到新服务器后,请按以下步骤操作:
-
在新服务器上安装并运行 Open WebUI:
使用 Docker 容器设置并运行 Open WebUI。请参考 🚀 快速开始 中的说明进行安装并启动 Open WebUI 容器。启动后,在执行导入步骤之前停止它:docker stop open-webui
-
使用
docker cp
命令将数据库文件复制到容器内:
假设导出的webui.db
文件位于当前工作目录中,可以使用以下命令将其复制到容器内:docker cp ./webui.db open-webui:/app/backend/data/webui.db
-
启动 Open WebUI 容器:
再次启动容器以使用导入的数据库:docker start open-webui
新服务器现在应该已经运行了带有导入数据库的 Open WebUI。
注意事项
- 此导出/导入过程 仅适用于使用内部 SQLite 数据库 (
webui.db
) 的情况。 - 如果你使用的是外部 PostgreSQL 数据库,则此方法不适用,因为数据库是在容器外管理的。对于 PostgreSQL,你需要遵循特定于 PostgreSQL 的工具和流程来备份和恢复数据库。
为什么这很重要
这种方法特别适用于以下场景:
- 将你的 Open WebUI 数据迁移到新的服务器或机器。
- 在更新或修改前创建数据备份。
- 在多个服务器上使用相同的设置测试 Open WebUI。
# 快速导出和导入命令总结
# 导出:
docker cp open-webui:/app/backend/data/webui.db ./webui.db
# 在新服务器上停止容器:
docker stop open-webui
# 导入:
docker cp ./webui.db open-webui:/app/backend/data/webui.db
# 启动容器:
docker start open-webui
通过这些步骤,你可以轻松管理 Open WebUI 的迁移或备份过程。请注意你所使用的数据库格式,以确保兼容性。