-- ===================================================== -- 梦幻西游一站式运营管理系统 - 后台用户表初始化脚本 -- 适用于 MYSQL 8.4 -- 创建日期: 2025-12-12 -- 描述: 创建后台管理员用户相关数据表 -- ===================================================== -- 选择数据库 USE mhxy_web; -- 创建后台管理员用户表 CREATE TABLE IF NOT EXISTS admin_users ( id INT PRIMARY KEY AUTO_INCREMENT COMMENT '管理员ID', username VARCHAR(50) NOT NULL UNIQUE COMMENT '用户名', password VARCHAR(255) NOT NULL COMMENT '密码(加密存储)', real_name VARCHAR(100) COMMENT '真实姓名', email VARCHAR(100) COMMENT '邮箱地址', phone VARCHAR(20) COMMENT '联系电话', status TINYINT DEFAULT 1 COMMENT '账号状态: 0-禁用, 1-启用', is_super_admin TINYINT DEFAULT 0 COMMENT '是否超级管理员: 0-否, 1-是', last_login_time DATETIME COMMENT '最后登录时间', last_login_ip VARCHAR(45) COMMENT '最后登录IP', created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', -- 创建索引 INDEX idx_username (username), INDEX idx_status (status), INDEX idx_created_at (created_at) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='后台管理员用户表'; -- 创建管理员操作日志表 CREATE TABLE IF NOT EXISTS admin_operation_logs ( id INT PRIMARY KEY AUTO_INCREMENT COMMENT '日志ID', admin_user_id INT NOT NULL COMMENT '管理员ID', operation_type VARCHAR(50) NOT NULL COMMENT '操作类型', operation_desc TEXT COMMENT '操作描述', request_method VARCHAR(10) COMMENT '请求方法', request_url VARCHAR(255) COMMENT '请求URL', request_params TEXT COMMENT '请求参数', response_status INT COMMENT '响应状态码', ip_address VARCHAR(45) COMMENT 'IP地址', user_agent TEXT COMMENT '用户代理', created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', -- 创建外键约束 FOREIGN KEY (admin_user_id) REFERENCES admin_users(id) ON DELETE CASCADE, -- 创建索引 INDEX idx_admin_user_id (admin_user_id), INDEX idx_operation_type (operation_type), INDEX idx_created_at (created_at) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='管理员操作日志表'; -- 创建系统配置表 CREATE TABLE IF NOT EXISTS system_config ( id INT PRIMARY KEY AUTO_INCREMENT COMMENT '配置ID', config_key VARCHAR(100) NOT NULL UNIQUE COMMENT '配置键', config_value TEXT COMMENT '配置值', config_desc VARCHAR(255) COMMENT '配置描述', config_group VARCHAR(50) DEFAULT 'default' COMMENT '配置分组', is_editable TINYINT DEFAULT 1 COMMENT '是否可编辑: 0-否, 1-是', created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', -- 创建索引 INDEX idx_config_key (config_key), INDEX idx_config_group (config_group) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='系统配置表'; -- 插入初始超级管理员账号(密码为: admin123,实际部署时需要加密) INSERT INTO admin_users (username, password, real_name, email, status, is_super_admin) VALUES ('admin', '$2b$10$rOzK5V4yR7YqE6XoV4Wz9ODz8rN2L5A3C7B1F9H6I4J2K3L5M6N7O8P', '系统管理员', 'admin@mhxy.com', 1, 1); -- 说明: 上面插入的密码是 'admin123' 的BCrypt加密结果 -- 生产环境中应该使用更复杂的密码 -- 加密密码生成示例(实际使用时需要在应用中处理): -- const bcrypt = require('bcrypt'); -- const hashedPassword = await bcrypt.hash('admin123', 10); -- 插入系统默认配置 INSERT INTO system_config (config_key, config_value, config_desc, config_group) VALUES ('site_name', '梦幻西游一站式运营管理系统', '网站名称', 'basic'), ('site_description', '梦幻西游游戏运营管理后台系统', '网站描述', 'basic'), ('admin_session_timeout', '7200', '管理员会话超时时间(秒)', 'security'), ('max_login_attempts', '5', '最大登录尝试次数', 'security'), ('enable_captcha', '1', '是否启用验证码', 'security'); -- ===================================================== -- 使用说明: -- 1. 在MySQL 8.4中执行此脚本 -- 2. 确保数据库存在: CREATE DATABASE IF NOT EXISTS mhxy_web; -- 3. 执行脚本: source /path/to/init_admin_users.sql; -- 4. 初始管理员账号: admin / admin123 -- 5. 部署到生产环境时,请修改默认密码 -- =====================================================