Files
nginxserver/sql/init.sql
2026-07-16 13:03:11 +08:00

49 lines
2.5 KiB
SQL

-- ============================================
-- Nginx域名转发管理平台 - 数据库初始化脚本
-- 数据库: nginxserver
-- MySQL: 10.1.1.122:3306
-- ============================================
-- 创建数据库(如果不存在)
CREATE DATABASE IF NOT EXISTS nginxserver
DEFAULT CHARACTER SET utf8mb4
DEFAULT COLLATE utf8mb4_unicode_ci;
USE nginxserver;
-- ============================================
-- 转发规则表
-- ============================================
CREATE TABLE IF NOT EXISTS forwarding_rules (
id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '主键ID',
domain VARCHAR(255) NOT NULL COMMENT '域名',
protocol VARCHAR(10) NOT NULL COMMENT '协议类型: http / https',
target VARCHAR(500) NOT NULL COMMENT '转发目标地址 (http://或https://开头)',
config_file VARCHAR(500) DEFAULT NULL COMMENT 'Nginx配置文件路径',
ssl_cert VARCHAR(500) DEFAULT NULL COMMENT 'SSL证书文件路径',
ssl_key VARCHAR(500) DEFAULT NULL COMMENT 'SSL私钥文件路径',
status TINYINT DEFAULT 1 COMMENT '状态: 0-已删除, 1-正常',
created_at DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
UNIQUE KEY uk_domain (domain),
INDEX idx_status (status),
INDEX idx_created_at (created_at)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Nginx转发规则表';
-- ============================================
-- SSL证书管理表
-- ============================================
CREATE TABLE IF NOT EXISTS certificates (
id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '主键ID',
domain VARCHAR(255) NOT NULL COMMENT '域名',
cert_path VARCHAR(500) DEFAULT NULL COMMENT '证书文件路径 (.pem)',
key_path VARCHAR(500) DEFAULT NULL COMMENT '私钥文件路径 (.key)',
issue_date DATETIME DEFAULT NULL COMMENT '证书签发日期',
expire_date DATETIME DEFAULT NULL COMMENT '证书过期日期',
status VARCHAR(20) DEFAULT 'active' COMMENT '状态: active / expired / revoked',
created_at DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
UNIQUE KEY uk_cert_domain (domain),
INDEX idx_status (status)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='SSL证书管理表';