-- 更新 sys_log 表结构以支持新的日志功能 -- 作者: 王志维 -- 创建时间: 2026-04-14 -- 备份旧数据(可选) -- CREATE TABLE sys_log_backup AS SELECT * FROM sys_log; -- 删除旧表(如果存在) DROP TABLE IF EXISTS `sys_log`; -- 创建新表 CREATE TABLE `sys_log` ( `log_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `trace_id` varchar(255) DEFAULT NULL COMMENT '链路ID', `description` varchar(255) DEFAULT NULL COMMENT '日志描述', `module` varchar(50) DEFAULT NULL COMMENT '所属模块', `request_url` varchar(512) DEFAULT NULL COMMENT '请求URL', `request_method` varchar(10) DEFAULT NULL COMMENT '请求方式', `request_headers` text COMMENT '请求头', `request_body` text COMMENT '请求体', `status_code` int(11) DEFAULT NULL COMMENT '状态码', `response_headers` text COMMENT '响应头', `response_body` mediumtext COMMENT '响应体', `time_taken` bigint(20) DEFAULT NULL COMMENT '耗时(ms)', `ip` varchar(100) DEFAULT NULL COMMENT 'IP', `address` varchar(255) DEFAULT NULL COMMENT 'IP归属地', `browser` varchar(100) DEFAULT NULL COMMENT '浏览器', `os` varchar(100) DEFAULT NULL COMMENT '操作系统', `status` tinyint(1) DEFAULT '1' COMMENT '状态(1:成功;2:失败)', `error_msg` text COMMENT '错误信息', `create_user` bigint(20) DEFAULT NULL COMMENT '创建人', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `delete_flag` tinyint(1) DEFAULT '0' COMMENT '是否删除 :0 未删除,1已删除', `create_by` varchar(50) DEFAULT NULL COMMENT '创建人', `update_by` varchar(50) DEFAULT NULL COMMENT '更新人', PRIMARY KEY (`log_id`) USING BTREE, KEY `idx_module` (`module`) USING BTREE COMMENT '模块查询优化', KEY `idx_ip` (`ip`) USING BTREE COMMENT 'IP查询优化', KEY `idx_create_time` (`create_time`) USING BTREE COMMENT '时间范围查询优化', KEY `idx_status` (`status`) USING BTREE COMMENT '状态查询优化' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='系统操作日志表'; -- 插入测试数据(可选) -- INSERT INTO `sys_log` (`description`, `module`, `request_url`, `request_method`, `status_code`, `time_taken`, `ip`, `status`, `create_time`) -- VALUES ('用户登录', '登录认证', '/api/login/accountLogin', 'POST', 200, 150, '127.0.0.1', 1, NOW());