Upgrade To v0.8.1
概述
本指南适用于从 v0.8.0 升级到 v0.8.1 的用户。
- SQLite 用户:升级前请备份元数据库。新增元数据表会在 DB-GPT 服务启动时自动创建。
- MySQL 用户:需要执行数据库迁移,请使用
assets/schema/upgrade/v0_8_1/目录下的增量升级脚本。
准备工作
备份数据库
注意
为防止数据丢失,请务必在升级前备份元数据库。请根据数据库类型选择合适的备份方式,例如 MySQL 使用 mysqldump,SQLite 直接复制数据库文件。
确认升级脚本
v0.8.1 的升级脚本维护在仓库的 assets/schema/upgrade/v0_8_1/ 目录下:
| 脚本 | 用途 |
|---|---|
upgrade_to_v0.8.1.sql | 用于将已有的 v0.8.0 MySQL 元数据库增量升级到 v0.8.1。 |
v0.8.1.sql | 用于全新安装的完整 v0.8.1 Schema。 |
从 v0.8.0 升级时,请使用 upgrade_to_v0.8.1.sql。不要在已有数据库上执行完整 Schema 文件。
升级步骤
第 1 步 — 停止 DB-GPT 服务
使用与启动时相同的方式停止正在运行的 DB-GPT 服务。
第 2 步 — 升级数据库
v0.8.1 的元数据升级包含 1 个字段变更和 3 张新增元数据表。
字段变更
| 对象 | 变更 | 说明 |
|---|---|---|
gpts_messages.content | 字段类型调整为 longtext | 支持存储更长的 Agent 消息和执行轨迹。 |
新增表
| 表名 | 说明 |
|---|---|
connector_instance | 存储 MCP 连接器实例、加密凭据、传输/扩展配置、生命周期状态、用户名和系统编码。 |
dbgpt_serve_scheduled_task | 存储定时任务定义、Cron 表达式、启停状态,以及用于对话重放的冻结会话快照。 |
dbgpt_serve_scheduled_run | 存储定时任务运行历史,包括状态、开始/结束时间、结果摘要、错误信息和生成的会话 ID。 |
对于 MySQL 元数据库,请执行增量升级脚本:
mysql -u <user> -p dbgpt < assets/schema/upgrade/v0_8_1/upgrade_to_v0.8.1.sql
如果你的元数据库名称不是 dbgpt,请将命令中的 dbgpt 替换为实际数据库名,或在正确的数据库上下文中执行该 SQL 文件。
提示
增量脚本开头包含 USE dbgpt;。如果你的元数据库使用了其他名称,请在执行前修改这一行,或先在 MySQL 会话中选择正确的目标数据库。
第 3 步 — 安装依赖
根据你的安装方式更新依赖。如果你是从源码安装并使用默认配置,请执行:
uv sync --all-packages
如果需要使用 v0.8.1 新增的可选集成,请按需安装对应 Extra:
# LiteLLM 代理 Provider
uv sync --all-packages --extra "proxy_litellm"
# Qdrant 向量存储
uv sync --all-packages --extra "storage_qdrant"
# Valkey 缓存 / 向量存储
uv sync --all-packages --extra "storage_valkey"
第 4 步 — 启动 DB-GPT 服务
使用你常用的方式重新启动 DB-GPT 服务。
启动后建议验证:
- 历史对话可以正常加载。
- MCP 连接器页面可以正常展示、激活和测试连接器。
- 定时任务可以从已完成对话保存,并能展示运行历史。
- 长程 ReAct/Data Agent 对话可以正常展示任务计划和上下文使用状态。
回滚说明
如果升级失败,请停止 DB-GPT 服务,并使用升级前的备份恢复元数据库。由于 v0.8.1 涉及元数据 Schema 变更,不建议继续运行处于部分升级状态的数据库。