📦 导出和导入数据库
如果您需要将 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。
# Quick commands summary for export and import
# Export:
docker cp open-webui:/app/backend/data/webui.db ./webui.db
# Stop container on the new server:
docker stop open-webui
# Import:
docker cp ./webui.db open-webui:/app/backend/data/webui.db
# Start container:
docker start open-webui
通过这些步骤,您可以轻松管理 Open WebUI 的迁移或备份过程。请记住您使用的数据库格式,以确保兼容性。