Files
iotlcm/schema/03-schema-align-prod.sql
T
MiFaZhan bc2c7bcc6b init: IotLCM 开源版部署仓
内容:
- docker-compose.yml:14 个基础/业务服务 + 3 个可选 profile(with-mock 挡板、with-bot、with-nginx)
- .env.example:集中管理镜像仓库、口令、端口;必填项缺失时 compose 直接报错退出
- config.example/:10 份配置模板,全部为占位值与注释说明
- schema/:12 个初始化脚本,按文件名顺序由 MySQL initdb 自动执行

脱敏处理:
- 生产/内网 IP、镜像仓库地址、公司名、真实域名全部清除
- 演示账号保留 18 个(出库与划拨依赖账号与部门树的关联),
  昵称/邮箱/手机号/登录IP/头像改为占位或编造值
- 数据库账号与 admin 口令改为初始化时按 .env 注入计算
- 通道模板与 Mock 通道的上游密钥置空
- Mock 通道地址指向 compose 内 onelink-mock 服务

部署时用 --profile with-mock 启动运营商接口挡板,即可在无真实运营商环境时跑通全链路。
2026-10-28 13:40:12 +08:00

43 lines
2.6 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- ============================================
-- 演示环境种子库 —— 按生产基准补齐(2026-10-27)
-- 基准:生产 生产环境/db_iotlcm(89 表)
-- 受检:演示 内网环境 演示库容器/db_iotlcm(88 表)
--
-- 经 DBX 直连生产 + 演示端逐列比对(列名/类型/可空/默认/extra),确认实际差异仅 2 处:
-- 1. 缺表 t_sms_template_config(11 列,生产新增的短信场景模板配置)
-- 2. 两处 batch_no 默认值:种子库 DEFAULT '',生产无默认值
--
-- 说明:此前误报的 batch_detail 缺 id 列 / t_sim_channels 两列可空性差异,
-- 均为 shell 管道首行丢失 + MD5 签名受表级 collation 影响的假象,已排除。
-- 88 张同名表中 86 张列定义与生产完全一致。
--
-- 幂等:可重复执行。
-- 执行顺序:02-schema-fix-preview1.sql 之后(03-);可与 02 互换,两者互补不重叠。
-- ============================================
SET NAMES utf8mb4;
USE `db_iotlcm`;
-- ---------- 1. 缺表:t_sms_template_config ----------
CREATE TABLE IF NOT EXISTS `t_sms_template_config` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
`scene` varchar(64) NOT NULL COMMENT '业务场景码,全局唯一,如 bind_phone',
`scene_name` varchar(128) NOT NULL DEFAULT '' COMMENT '场景名称(可读)',
`service_type` varchar(8) NOT NULL DEFAULT '' COMMENT '短信供应商:空=用服务默认,1=阿里云,2=腾讯云',
`sign_name` varchar(64) NOT NULL DEFAULT '' COMMENT '短信签名:空=用服务默认',
`template_id` varchar(64) NOT NULL COMMENT '短信模板ID',
`msg_content_template` varchar(512) NOT NULL DEFAULT '' COMMENT '内容参数模板,支持 {content}/{contentJson} 占位;空=直接使用调用方 msgContent',
`status` tinyint NOT NULL DEFAULT '1' COMMENT '状态:0停用,1启用',
`remark` varchar(255) NOT NULL DEFAULT '' COMMENT '备注',
`created_at` datetime DEFAULT NULL COMMENT '创建时间',
`updated_at` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_scene` (`scene`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='短信业务场景模板配置';
-- ---------- 2. batch_no 默认值对齐生产(去掉 '' 默认) ----------
-- 生产:`batch_no` varchar(64) NOT NULL (无 DEFAULT)
-- 种子:`batch_no` varchar(64) NOT NULL DEFAULT ''
ALTER TABLE `t_sim_pool_bind_package` MODIFY COLUMN `batch_no` varchar(64) NOT NULL COMMENT '批次号';
ALTER TABLE `t_sim_pool_bind_pkg_logs` MODIFY COLUMN `batch_no` varchar(64) NOT NULL COMMENT '批次号';