时差项目(Project_TL)数据库初始化脚本汇总 整理日期:2026-06-15 更新日期:2026-06-20(G4-2:两 migration 已并入 base;补幂等 runner
init-database.sh) 所有脚本均从源代码各模块中抽取,统一存放于本目录。 文件名已与目标数据库名保持一致,导入时直接按文件名指定同名库即可。
# 建齐 7 库 + 导入全部 base(含对焦扩列 / house_autofocus_calibration / operation_log),幂等可重跑
cd sql && ./init-database.sh # 默认 127.0.0.1:3306 root/root
./init-database.sh 192.168.0.108 3306 root root # 指定服务器
init-database.sh对每个库做CREATE DATABASE IF NOT EXISTS+ 导入对应 base 脚本(脚本内DROP TABLE IF EXISTS), 全新部署一次跑完不缺表/列。⚠️ 已部署旧库的"增量升级"勿用本脚本(会重建表丢数据),改跑migrations/(见下文四)。
| 脚本文件 | 目标数据库 | 对应模块 | 表数量 | 说明 |
|---|---|---|---|---|
aivfo-auth.sql |
aivfo-auth |
aivfo-gateway(认证/网关) | 4 | middle、permission、role、user 等认证授权表 |
aivfo_services.sql |
aivfo_services |
aivfo-service(核心服务) | 2 | alarm_contacts、tdi_log |
aivfo-tl.sql |
aivfo-tl |
aivfo-data-transmission(数据传输) | 4 | video、video_pictures、video_splice、video_update |
aivfo_tl_setting.sql |
aivfo_tl_setting |
aivof-tl-control(TL 控制配置) | 18 | 告警/区域等配置表,含多语言;流水表已精简。含对焦扩列(tl_setting +5 / house_well_setting +2)与新表 house_autofocus_calibration(migrations/2026-06-17 已并入) |
aivfo_tl.sql |
aivfo_tl |
aivfo-business-manage(业务管理) | 25 | 病例/胚胎/字典等业务表,含多语言;流水表已精简 |
⚠️ 注意:
aivfo_tl.sql(下划线,业务库)与aivfo-tl.sql(中划线,数据传输库)是两个不同的库,名字相近勿混淆。
| 脚本文件 | 目标数据库 | 来源框架组件 | 说明 |
|---|---|---|---|
log.sql |
log |
aivfo-log-spring-boot | 系统日志表 system_log + 全量操作日志表 operation_log(migrations/2026-06-18 已并入) |
quartz.sql |
quartz |
aivfo-quartz-spring-boot | Quartz 定时任务表(MySQL 8.x 版本,表前缀 tqrtz) |
DROP TABLE IF EXISTS + 建表),部署时导入同名库即可。aivfo-auth / aivfo-tl(中划线)与 aivfo_tl / aivfo_tl_setting / aivfo_services(下划线)的命名差异源自各服务 application-local.properties 中的 jdbc 配置,库名不可改动(应用引用),故以文件名向库名对齐。log 与 quartz 两库需手动创建(其余库已存在);脚本不含 CREATE DATABASE/USE,导入时由 mysql 客户端指定目标库。项目文档/需求文档/精简测试数据.sql(适配本地实际库名的版本为 精简测试数据_adapted.sql)。导入命令示例(Docker 容器 tl-mysql):
docker exec -i tl-mysql mysql -uroot -proot 'aivfo-auth' < aivfo-auth.sql
docker exec -i tl-mysql mysql -uroot -proot 'aivfo_tl' < aivfo_tl.sql
# …其余库同理,按文件名=库名导入
migrations/(仅供已部署旧库增量升级)| 脚本 | 目标库 | 内容 | 全新部署 |
|---|---|---|---|
migrations/2026-06-17-autofocus-data-layer.sql |
aivfo_tl_setting |
tl_setting +5 对焦列、house_well_setting +2 覆盖列、新表 house_autofocus_calibration |
不需要(已并入 aivfo_tl_setting.sql) |
migrations/2026-06-18-operation-log.sql |
log |
新表 operation_log |
不需要(已并入 log.sql) |
init-database.sh 或逐库导入),已含上述表/列,勿再跑 migration。ADD COLUMN 不支持 IF NOT EXISTS,
旧库重跑 autofocus 迁移前先 DESC 判断列是否已存在,否则报 Duplicate column。V-046 / 开发计划 G4-3。