-- DBSYNC-02:方式甲稳定排序列与水位操作审计。不含凭据,不回填存量配置。 SET @sql := IF((SELECT COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='mdp_entity' AND COLUMN_NAME='tie_breaker_column')=0, 'ALTER TABLE mdp_entity ADD COLUMN tie_breaker_column VARCHAR(100) NULL COMMENT ''DB_SYNC 同一增量值内的稳定唯一排序列'' AFTER incr_column', 'DO 0'); PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt; SET @sql := IF((SELECT COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='mdp_entity' AND COLUMN_NAME='transform_source_table')=0, 'ALTER TABLE mdp_entity ADD COLUMN transform_source_table VARCHAR(200) NULL COMMENT ''转换逻辑表名;为空沿用物理源表名'' AFTER source_table_name', 'DO 0'); PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt; CREATE TABLE IF NOT EXISTS mdp_entity_cursor_audit ( id BIGINT AUTO_INCREMENT PRIMARY KEY, tenant_id BIGINT NOT NULL, entity_id BIGINT NOT NULL, entity_code VARCHAR(100) NOT NULL, old_cursor VARCHAR(500) NULL, new_cursor VARCHAR(500) NULL, action_type VARCHAR(40) NOT NULL, reason VARCHAR(500) NOT NULL, operator_id BIGINT NULL, operator_name VARCHAR(100) NULL, create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, KEY idx_mdp_cursor_audit_entity_time (entity_id, create_time), KEY idx_mdp_cursor_audit_tenant_time (tenant_id, create_time) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='MDP实体水位操作审计';