98 lines
4.5 KiB
SQL
98 lines
4.5 KiB
SQL
-- =============================================
|
||
-- 梦幻西游运营管理系统 - 系统配置数据插入脚本 (兼容版)
|
||
-- 版本: v1.0.5
|
||
-- 创建日期: 2025-12-12
|
||
-- 描述: 插入系统配置数据,完全兼容现有表结构
|
||
-- =============================================
|
||
|
||
-- 切换到目标数据库
|
||
USE mhxy_web;
|
||
|
||
-- =============================================
|
||
-- 1. 创建配置历史记录表 (如果不存在)
|
||
-- =============================================
|
||
CREATE TABLE IF NOT EXISTS system_config_history (
|
||
id INT AUTO_INCREMENT PRIMARY KEY COMMENT '记录ID',
|
||
config_key VARCHAR(100) NOT NULL COMMENT '配置键名',
|
||
old_value TEXT COMMENT '原配置值',
|
||
new_value TEXT COMMENT '新配置值',
|
||
changed_by INT COMMENT '修改人用户ID',
|
||
changed_reason VARCHAR(500) COMMENT '修改原因',
|
||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
|
||
|
||
INDEX idx_config_key (config_key),
|
||
INDEX idx_created_at (created_at)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='系统配置历史记录表';
|
||
|
||
-- =============================================
|
||
-- 2. 创建配置缓存表 (如果不存在)
|
||
-- =============================================
|
||
CREATE TABLE IF NOT EXISTS system_config_cache (
|
||
id INT AUTO_INCREMENT PRIMARY KEY COMMENT '缓存ID',
|
||
cache_key VARCHAR(100) NOT NULL UNIQUE COMMENT '缓存键',
|
||
cache_value LONGTEXT COMMENT '缓存值(JSON格式)',
|
||
expires_at TIMESTAMP COMMENT '过期时间',
|
||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||
|
||
INDEX idx_cache_key (cache_key),
|
||
INDEX idx_expires_at (expires_at)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='系统配置缓存表';
|
||
|
||
-- =============================================
|
||
-- 3. 清空并重新插入配置数据
|
||
-- =============================================
|
||
|
||
-- 先删除所有现有配置数据
|
||
DELETE FROM system_config;
|
||
|
||
-- 插入基本配置 (使用现有表字段)
|
||
INSERT INTO system_config (config_key, config_value, config_desc, config_group) VALUES
|
||
('site_name', '梦幻西游一站式运营管理系统', '系统显示名称', 'basic'),
|
||
('site_version', '1.0.0', '当前系统版本号', 'basic'),
|
||
('site_description', '专业的游戏运营管理平台', '系统描述信息', 'basic'),
|
||
('admin_email', 'admin@mhxy.com', '系统管理员联系邮箱', 'basic'),
|
||
('maintenance_mode', '0', '开启后用户无法正常访问系统', 'basic'),
|
||
('default_language', 'zh-CN', '系统默认语言设置', 'basic');
|
||
|
||
-- 插入安全配置
|
||
INSERT INTO system_config (config_key, config_value, config_desc, config_group) VALUES
|
||
('jwt_secret', 'JWT_SECRET_32_BYTE_RANDOM_STRING_2025', '用于JWT令牌签名的密钥,建议32位字符', 'security'),
|
||
('jwt_expires_in', '24', 'JWT访问令牌的有效期,单位:小时', 'security'),
|
||
('jwt_refresh_expires_in', '168', 'JWT刷新令牌的有效期,单位:小时', 'security'),
|
||
('login_attempt_limit', '5', '连续登录失败次数限制', 'security'),
|
||
('session_timeout', '30', '用户会话超时时间', 'security'),
|
||
('password_min_length', '6', '用户密码最小长度要求', 'security'),
|
||
('enable_2fa', '0', '是否启用双因子认证功能', 'security');
|
||
|
||
-- 插入游戏通信配置
|
||
INSERT INTO system_config (config_key, config_value, config_desc, config_group) VALUES
|
||
('game_server_api', 'http://127.0.0.1:8080/tool/http', '游戏服务端HTTP接口地址', 'game'),
|
||
('game_server_psk', 'THIS_IS_A_32_BYTE_FIXED_PSK!!!!!', '游戏服务端预共享密钥,用于API认证', 'game'),
|
||
('game_server_timeout', '30', '与游戏服务端通信的超时时间', 'game'),
|
||
('game_server_retry_count', '3', 'API请求失败时的重试次数', 'game'),
|
||
('player_auto_register', '1', '新玩家是否自动创建账号', 'game'),
|
||
('game_log_level', 'info', '游戏相关操作的日志记录级别', 'game');
|
||
|
||
-- =============================================
|
||
-- 4. 验证结果
|
||
-- =============================================
|
||
|
||
-- 检查当前表结构
|
||
DESCRIBE system_config;
|
||
|
||
-- 检查各组配置数量
|
||
SELECT config_group, COUNT(*) as config_count
|
||
FROM system_config
|
||
GROUP BY config_group;
|
||
|
||
-- 检查关键配置
|
||
SELECT config_key, config_value, config_desc
|
||
FROM system_config
|
||
WHERE config_key IN ('jwt_secret', 'game_server_api', 'game_server_psk');
|
||
|
||
-- 检查新表是否创建成功
|
||
SHOW TABLES LIKE 'system_config_history';
|
||
SHOW TABLES LIKE 'system_config_cache';
|
||
|
||
-- 完成提示
|
||
SELECT 'System config data inserted successfully with compatible fields!' as message; |