-- Running upgrade 6165691326d4 -> a45a8087831b CREATE TABLE operation_logs ( id BIGINT UNSIGNED NOT NULL COMMENT '主键ID' AUTO_INCREMENT, user_id BIGINT UNSIGNED COMMENT '操作人ID(账号删除后置空)', username VARCHAR(64) NOT NULL COMMENT '操作人用户名(冗余存储便于追溯)', module VARCHAR(64) NOT NULL COMMENT '所属模块,如 用户管理', action VARCHAR(32) NOT NULL COMMENT '操作类型:新增/修改/删除/导出', summary VARCHAR(255) NOT NULL COMMENT '操作摘要(中文,供人阅读)', method VARCHAR(8) COMMENT 'HTTP 方法', path VARCHAR(255) COMMENT '请求路径', ip VARCHAR(45) COMMENT '客户端IP(45位兼容IPv6)', user_agent VARCHAR(255) COMMENT '客户端User-Agent(截断存储)', request_data TEXT COMMENT '请求参数(已脱敏)', success TINYINT NOT NULL COMMENT '是否成功:1成功 0失败' DEFAULT '0', error_message VARCHAR(500) COMMENT '失败原因(写入方须截断)', duration_ms INTEGER COMMENT '处理耗时(毫秒)', create_time DATETIME NOT NULL COMMENT '创建时间' DEFAULT CURRENT_TIMESTAMP, CONSTRAINT pk_operation_logs PRIMARY KEY (id), CONSTRAINT fk_operation_logs_user_id FOREIGN KEY(user_id) REFERENCES users (id) ON DELETE SET NULL )CHARSET=utf8mb4 ENGINE=InnoDB COMMENT='操作日志表' COLLATE utf8mb4_general_ci; CREATE INDEX idx_operation_logs_create_time ON operation_logs (create_time); CREATE INDEX idx_operation_logs_module ON operation_logs (module); CREATE INDEX idx_operation_logs_user_id ON operation_logs (user_id); CREATE INDEX idx_operation_logs_username ON operation_logs (username); UPDATE alembic_version SET version_num='a45a8087831b' WHERE alembic_version.version_num = '6165691326d4';