# 检澜演示环境快照

由 `scripts/export_db_snapshot.py` 生成，供新同事 **clone 后一键还原** 与当前演示一致的数据。

## 包含内容

| 路径 | 说明 |
|------|------|
| `sql/seed_snapshot.sql` | MySQL 数据：`user`、`model`、`media`、`detection`、`operation` |
| `static/medias/` | 媒体库图片 |
| `static/models/` | YOLO 权重（含种子 7 类 + 训练产出，体积较大） |
| `static/results/` | 检测标注预览图 |
| `static/avatars/` | 用户头像占位图 |
| `training_meta/` | 模型训练任务与数据集 JSON |
| `manifest.json` | 导出时间与文件统计 |

## 导入（推荐）

```powershell
cd BridgeDiseaseBackend-main
docker compose -p bridge-disease up -d db   # 或已有 MySQL 3307

$env:SQLALCHEMY_DATABASE_URI="mysql+pymysql://root:bridgedisease_root@127.0.0.1:3307/bridge_disease?charset=utf8mb4"
python scripts/import_db_snapshot.py
python run.py
```

仅还原文件、不改数据库：`python scripts/import_db_snapshot.py --files-only`

## 重新导出（维护者）

本地环境调试满意后：

```powershell
python scripts/export_db_snapshot.py
git add sql/seed_snapshot.sql seed_assets/snapshot/
```

> `static/models/` 约 80MB+，推送前确认团队可接受仓库体积，或改用 Git LFS。

## 与 `init_db.sql` 的关系

- **`init_db.sql`**：最小种子（用户 + 7 个演示模型元数据），需再跑 `seed_medias.py` 等脚本。
- **`seed_snapshot.sql`**：当前完整演示库 + 快照静态文件，**效果与维护者本机一致**。
