2026-09-17 18:47:25 +08:00
|
|
|
|
-- v6 设备级采集模式:达梦数据库升级前检查
|
|
|
|
|
|
-- 本脚本只读。必须先完成检查,再执行 02-device-collection-mode-upgrade.sql。
|
|
|
|
|
|
-- 新版 syslog-serve JAR 启动前必须完成字段升级和验证。
|
|
|
|
|
|
|
|
|
|
|
|
-- 1. 确认当前用户和 DEVICE_DEVICE 表存在。
|
|
|
|
|
|
SELECT USER AS CURRENT_SCHEMA FROM DUAL;
|
|
|
|
|
|
|
|
|
|
|
|
SELECT TABLE_NAME
|
|
|
|
|
|
FROM USER_TABLES
|
|
|
|
|
|
WHERE TABLE_NAME = 'DEVICE_DEVICE';
|
|
|
|
|
|
|
|
|
|
|
|
-- 2. 记录升级前设备总数、有效设备数,供升级后核对。
|
|
|
|
|
|
SELECT COUNT(*) AS DEVICE_TOTAL
|
|
|
|
|
|
FROM DEVICE_DEVICE;
|
|
|
|
|
|
|
|
|
|
|
|
SELECT COUNT(*) AS ACTIVE_DEVICE_TOTAL
|
|
|
|
|
|
FROM DEVICE_DEVICE
|
|
|
|
|
|
WHERE DELETED_AT IS NULL
|
|
|
|
|
|
AND (DEL_FLAG IS NULL OR DEL_FLAG = '0');
|
|
|
|
|
|
|
|
|
|
|
|
-- 3. 目标字段应不存在。首次升级时预期返回 0 行;若已有记录,停止执行升级脚本并先核实。
|
|
|
|
|
|
SELECT COLUMN_NAME, DATA_TYPE, DATA_LENGTH, NULLABLE, DATA_DEFAULT
|
|
|
|
|
|
FROM USER_TAB_COLUMNS
|
|
|
|
|
|
WHERE TABLE_NAME = 'DEVICE_DEVICE'
|
|
|
|
|
|
AND COLUMN_NAME = 'COLLECTION_MODE';
|
|
|
|
|
|
|
|
|
|
|
|
-- 4. 约束名应未被占用。首次升级时预期返回 0 行。
|
|
|
|
|
|
SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE, STATUS
|
|
|
|
|
|
FROM USER_CONSTRAINTS
|
|
|
|
|
|
WHERE CONSTRAINT_NAME = 'CK_DEVICE_COLLECTION_MODE';
|
|
|
|
|
|
|
|
|
|
|
|
-- 5. 执行 DDL 前必须完成 DEVICE_DEVICE 可恢复备份,并确认没有未结束的长事务或表锁。
|
|
|
|
|
|
-- 数据库脚本不得写死现场 device_id;具体设备模式在新版 JAR 启动后通过管理 API 设置。
|
2026-09-17 23:15:15 +08:00
|
|
|
|
|
|
|
|
|
|
-- 6. API 拉取配置表及 LOOKBACK_SECONDS 必须存在。记录当前默认值;旧版通常为 300,新版目标为 0。
|
|
|
|
|
|
-- 这里只修改后续新记录的默认值,不覆盖已有任务显式配置。
|
|
|
|
|
|
SELECT TABLE_NAME
|
|
|
|
|
|
FROM USER_TABLES
|
|
|
|
|
|
WHERE TABLE_NAME = 'DEVICE_COLLECT_API_CONFIG';
|
|
|
|
|
|
|
|
|
|
|
|
SELECT COLUMN_NAME, DATA_TYPE, NULLABLE, DATA_DEFAULT
|
|
|
|
|
|
FROM USER_TAB_COLUMNS
|
|
|
|
|
|
WHERE TABLE_NAME = 'DEVICE_COLLECT_API_CONFIG'
|
|
|
|
|
|
AND COLUMN_NAME = 'LOOKBACK_SECONDS';
|
|
|
|
|
|
|
|
|
|
|
|
-- 7. 记录 API 拉取单窗口条数约束。旧版应存在 CK_DC_API_CFG_PAGE,范围上限通常为 10000;
|
|
|
|
|
|
-- 新版需要放宽为 50000,供微步 5 秒窗口使用。
|
|
|
|
|
|
SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE, STATUS, SEARCH_CONDITION
|
|
|
|
|
|
FROM USER_CONSTRAINTS
|
|
|
|
|
|
WHERE TABLE_NAME = 'DEVICE_COLLECT_API_CONFIG'
|
|
|
|
|
|
AND CONSTRAINT_NAME = 'CK_DC_API_CFG_PAGE';
|
2026-09-17 23:40:07 +08:00
|
|
|
|
|
|
|
|
|
|
-- 8. 记录响应字节约束。旧版上限通常为 268435456;新版微步按 50000 条 × 10 KiB
|
|
|
|
|
|
-- 取整使用 512 MiB,需要将上限放宽为 536870912。
|
|
|
|
|
|
SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE, STATUS, SEARCH_CONDITION
|
|
|
|
|
|
FROM USER_CONSTRAINTS
|
|
|
|
|
|
WHERE TABLE_NAME = 'DEVICE_COLLECT_API_CONFIG'
|
|
|
|
|
|
AND CONSTRAINT_NAME = 'CK_DC_API_CFG_RESP';
|