Files
senmesh-zc/deployment/ow/sql/upgrade/upgrade-20260915-release.sql
KodouWZF d39b3b035d feat(部署): 新增 deployment/ 内外网两套按侧部署包
按 demo/ 的写法把交付包改成「角色由目录决定」:iw/ 拷内网机、ow/ 拷外网机,
各自含镜像 tar、SQL、配置与 install.sh,install.sh 不再收 iw/ow 参数。

前端不再打进镜像,改为静态包放在 <侧>/web/ 只读挂进 nginx:1.27-alpine,
现场临时改页面直接替换文件 + restart web 即可。数据仍全部挂宿主机,
子目录命名与 deploy/offline 一致(pgdata/redis/mq/upload/logs/gate),
默认根改为包内 ./volumes,放数据盘只改 .env 的 SFILE_DATA_ROOT。

后端镜像 sfile-app:1.0.1 含传输优化那一批(实测组包 11.4×、解包 9.9×)。
出包脚本 deployment/scripts/build-package.sh 负责 jar→镜像→前端双包→sql→tar→VERSION。
2026-11-04 21:44:56 +08:00

91 lines
4.9 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.
-- =====================================================================
-- s-file 上线数据库脚本(2026-09-15 版本)
-- 适用场景:已有生产库升级(老版本 → 当前版本)
--
-- 本次版本(用户启停/注销、机构账号查询、手机号查记录、机构上传配置)
-- 相对老版本的数据库变更只有一项:
-- 新增表 x_upload_config(机构上传配置)
-- 其余功能(启停/注销/查询)全部复用已有表字段,无需任何变更。
--
-- 【执行说明】
-- * 生产主力库为达梦 DM8(MySQL 兼容模式)→ 只执行【第一部分】
-- * 若目标库是 PostgreSQL → 只执行【第二部分】
-- * 执行前建议备份;执行后核对【第三部分】的验证 SQL
-- * 可重复执行(幂等):表已存在时再执行会报"已存在"错误,属正常,
-- 说明该脚本已执行过,无需处理
-- =====================================================================
-- =====================================================================
-- 第一部分:达梦 DM8 / MySQL
-- =====================================================================
CREATE TABLE x_upload_config (
id BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
org_id BIGINT DEFAULT NULL COMMENT '机构id',
upload_enabled BIT(1) DEFAULT b'1' COMMENT '是否允许上传',
allow_all_type BIT(1) DEFAULT b'1' COMMENT '是否允许全部类型(false时按allowed_suffixes白名单校验)',
allowed_suffixes VARCHAR(1024) DEFAULT NULL COMMENT '允许的文件后缀(逗号分隔,小写),allow_all_type=false时生效',
max_file_size BIGINT DEFAULT NULL COMMENT '单文件大小上限(MB),空或0不限制',
deleted BIT(1) DEFAULT b'0' COMMENT '是否删除',
create_by BIGINT DEFAULT NULL COMMENT '创建人',
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
update_by BIGINT DEFAULT NULL COMMENT '修改人',
update_time DATETIME DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
proxy_by BIGINT DEFAULT NULL COMMENT '代理人',
PRIMARY KEY (id) USING BTREE,
UNIQUE KEY uk_org_id (org_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='机构上传配置';
-- 说明:不需要初始化数据。
-- 未配置的机构 = 默认策略(允许上传全部类型、不限大小),
-- 由各机构管理员在管理后台"上传配置"页面自行配置后落库。
-- =====================================================================
-- 第二部分:PostgreSQL
-- =====================================================================
-- CREATE TABLE x_upload_config (
-- id BIGSERIAL PRIMARY KEY,
-- org_id BIGINT DEFAULT NULL,
-- upload_enabled BOOLEAN DEFAULT TRUE,
-- allow_all_type BOOLEAN DEFAULT TRUE,
-- allowed_suffixes VARCHAR(1024) DEFAULT NULL,
-- max_file_size BIGINT DEFAULT NULL,
-- deleted BOOLEAN DEFAULT FALSE,
-- create_by BIGINT DEFAULT NULL,
-- create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-- update_by BIGINT DEFAULT NULL,
-- update_time TIMESTAMP DEFAULT NULL,
-- proxy_by BIGINT DEFAULT NULL,
-- CONSTRAINT uk_upload_config_org_id UNIQUE (org_id)
-- );
-- COMMENT ON TABLE x_upload_config IS '机构上传配置';
-- COMMENT ON COLUMN x_upload_config.id IS '主键ID';
-- COMMENT ON COLUMN x_upload_config.org_id IS '机构id';
-- COMMENT ON COLUMN x_upload_config.upload_enabled IS '是否允许上传';
-- COMMENT ON COLUMN x_upload_config.allow_all_type IS '是否允许全部类型(false时按allowed_suffixes白名单校验)';
-- COMMENT ON COLUMN x_upload_config.allowed_suffixes IS '允许的文件后缀(逗号分隔,小写),allow_all_type=false时生效';
-- COMMENT ON COLUMN x_upload_config.max_file_size IS '单文件大小上限(MB),空或0不限制';
-- COMMENT ON COLUMN x_upload_config.deleted IS '是否删除';
-- COMMENT ON COLUMN x_upload_config.create_by IS '创建人';
-- COMMENT ON COLUMN x_upload_config.create_time IS '创建时间';
-- COMMENT ON COLUMN x_upload_config.update_by IS '修改人';
-- COMMENT ON COLUMN x_upload_config.update_time IS '修改时间';
-- COMMENT ON COLUMN x_upload_config.proxy_by IS '代理人';
-- =====================================================================
-- 第三部分:执行后验证(达梦/MySQL 语法)
-- =====================================================================
-- 1) 表存在且为空(0 行正常)
-- SELECT COUNT(*) FROM x_upload_config;
-- 2) 唯一约束存在(应返回 uk_org_id)
-- SELECT INDEX_NAME FROM USER_INDEXES WHERE TABLE_NAME = 'X_UPLOAD_CONFIG';
-- 3) (可选)回滚脚本 —— 如需回滚上线:
-- DROP TABLE x_upload_config;