896 B
896 B
ADR-002:使用 SQLite 与 Alembic
状态
已接受
决策
使用 SQLAlchemy 2.x 管理数据访问,SQLite 作为默认数据库,Alembic 管理迁移。
原因
- 单机部署简单;
- 无额外数据库运维成本;
- 足以保存模型连接配置、测试运行、结果和本地认证数据;
- 未来可通过 DATABASE_URL 切换到 PostgreSQL,而不修改业务层。
运维操作
- 初始化并创建默认管理员:
./scripts/init_db.sh - 生成迁移:
uv run alembic revision --autogenerate -m "message" - 仅升级:
./scripts/migrate_db.sh - 回滚:
uv run alembic downgrade -1
0006_provider_crud 新建 provider_configs,不修改已有的 model_profiles 能力档案,因此旧库中重复的历史档案不会阻塞升级。
0007_user_token_version 增加用户令牌版本;密码重置递增版本,使旧令牌立即失效。