xorm/integrations/testdata/import1.sql
Lunny Xiao 9286f29576
Some checks failed
continuous-integration/drone/push Build is failing
Fix bug on import when split SQLs (#1878)
Fix #1876

Reviewed-on: #1878
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-committed-by: Lunny Xiao <xiaolunwen@gmail.com>
2021-03-23 21:34:42 +08:00

279 lines
10 KiB
SQL

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
-- 基本用户信息表
CREATE TABLE IF NOT EXISTS `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`),
KEY `uid` (`id`),
`user_name` varchar(128) CHARACTER SET utf8mb4 NOT NULL,
KEY `user_name` (`user_name`),
`email` varchar(32) NOT NULL,
KEY `email` (`email`),
`pass` varchar(256) NOT NULL,
`passwd` varchar(16) NOT NULL,
`uuid` TEXT NULL DEFAULT NULL COMMENT 'uuid',
`t` int(11) NOT NULL DEFAULT '0',
`u` bigint(20) NOT NULL,
`d` bigint(20) NOT NULL,
`plan` varchar(2) CHARACTER SET utf8mb4 NOT NULL DEFAULT 'A',
`node_group` INT NOT NULL DEFAULT '0',
`auto_reset_day` INT NOT NULL DEFAULT '0',
`auto_reset_bandwidth` DECIMAL(12,2) NOT NULL DEFAULT '0.00',
`transfer_enable` BIGINT(20) NOT NULL,
`port` int(11) NOT NULL,
`protocol_param` VARCHAR(128) NULL DEFAULT NULL,
`obfs_param` VARCHAR(128) NULL DEFAULT NULL,
`switch` tinyint(4) NOT NULL DEFAULT '1',
`enable` tinyint(4) NOT NULL DEFAULT '1',
`type` tinyint(4) NOT NULL DEFAULT '1',
`last_get_gift_time` int(11) NOT NULL DEFAULT '0',
`last_check_in_time` int(11) NOT NULL DEFAULT '0',
`last_rest_pass_time` int(11) NOT NULL DEFAULT '0',
`reg_date` datetime NOT NULL,
`invite_num` int(8) NOT NULL,
`money` decimal(12,2) NOT NULL,
`ref_by` int(11) NOT NULL DEFAULT '0',
`expire_time` int(11) NOT NULL DEFAULT '0',
`is_email_verify` tinyint(4) NOT NULL DEFAULT '0',
`reg_ip` varchar(128) NOT NULL DEFAULT '127.0.0.1',
`node_speedlimit` DECIMAL(12,2) NOT NULL DEFAULT '0.00',
`node_connector` int(11) NOT NULL DEFAULT '0',
`forbidden_ip` LONGTEXT NULL DEFAULT '',
`forbidden_port` LONGTEXT NULL DEFAULT '',
`disconnect_ip` LONGTEXT NULL DEFAULT '',
`is_hide` INT NOT NULL DEFAULT '0',
`last_detect_ban_time` datetime DEFAULT '1989-06-04 00:05:00',
`all_detect_number` int(11) NOT NULL DEFAULT '0',
`is_multi_user` INT NOT NULL DEFAULT '0',
`telegram_id` BIGINT NULL,
`is_admin` int(2) NOT NULL DEFAULT '0',
`im_type` int(11) DEFAULT '1',
`im_value` text,
`last_day_t` bigint(20) NOT NULL DEFAULT '0',
`mail_notified` int(11) NOT NULL DEFAULT '0',
`class` int(11) NOT NULL DEFAULT '0',
`class_expire` datetime NOT NULL DEFAULT '1989-06-04 00:05:00',
`expire_in` datetime NOT NULL DEFAULT '2099-06-04 00:05:00',
`theme` text NOT NULL,
`ga_token` text NOT NULL,
`ga_enable` int(11) NOT NULL DEFAULT '0',
`pac` LONGTEXT,
`remark` text
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 用户流量信息表
-- TODO: 重写流量信息提取逻辑
CREATE TABLE IF NOT EXISTS `user_traffic_log` (
`id` int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`),
`user_id` int(11) NOT NULL,
`u` BIGINT(20) NOT NULL,
`d` BIGINT(20) NOT NULL,
`node_id` int(11) NOT NULL,
`rate` float NOT NULL,
`traffic` varchar(32) NOT NULL,
`log_time` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 用户订阅 TOKEN 信息表
CREATE TABLE IF NOT EXISTS `user_token` (
`id` int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`),
`token` varchar(256) NOT NULL,
`user_id` int(11) NOT NULL,
`create_time` int(11) NOT NULL,
`expire_time` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 充值码使用信息表
CREATE TABLE IF NOT EXISTS `charge_code` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`),
`code` text NOT NULL,
`type` int(11) NOT NULL,
`number` DECIMAL(11,2) NOT NULL,
`isused` int(11) NOT NULL DEFAULT '0',
`userid` bigint(20) NOT NULL,
`usedatetime` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 邀请码使用信息表
CREATE TABLE IF NOT EXISTS `invite_code` (
`id` int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`),
`code` varchar(128) NOT NULL,
KEY `user_id` (`user_id`),
`user_id` int(11) NOT NULL,
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`updated_at` timestamp NOT NULL DEFAULT '2016-06-01 00:00:00'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 公告信息表
CREATE TABLE IF NOT EXISTS `announcement` (
`id` int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`),
`date` datetime NOT NULL,
`content` LONGTEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
`markdown` LONGTEXT NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 节点信息表
CREATE TABLE IF NOT EXISTS `node` (
`id` int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`),
`name` varchar(128) NOT NULL,
`type` int(3) NOT NULL,
`online_user` int(11) NOT NULL,
`mu_only` INT NULL DEFAULT '0',
`online` BOOLEAN NOT NULL DEFAULT TRUE,
`server` varchar(128) NOT NULL,
`method` varchar(64) NOT NULL,
`info` varchar(128) NOT NULL,
`status` varchar(128) NOT NULL,
`node_group` INT NOT NULL DEFAULT '0',
`sort` int(3) NOT NULL,
`custom_method` tinyint(1) NOT NULL DEFAULT '0',
`traffic_rate` float NOT NULL DEFAULT '1',
`node_class` int(11) NOT NULL DEFAULT '0',
`node_speedlimit` DECIMAL(12,2) NOT NULL DEFAULT '0.00',
`node_connector` int(11) NOT NULL DEFAULT '0',
`node_bandwidth` bigint(20) NOT NULL DEFAULT '0',
`node_bandwidth_limit` bigint(20) NOT NULL DEFAULT '0',
`bandwidthlimit_resetday` int(11) NOT NULL DEFAULT '0',
`node_heartbeat` bigint(20) NOT NULL DEFAULT '0',
`node_ip` text
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- TODO: 修改 VPN 节点的结算说明
-- 商店数据表
CREATE TABLE `shop` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`name` TEXT NOT NULL,
`price` DECIMAL(12,2) NOT NULL,
`content` TEXT NOT NULL,
`auto_renew` INT NOT NULL,
`status` INT NOT NULL DEFAULT '1',
`auto_reset_bandwidth` INT NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 优惠券数据表
CREATE TABLE `coupon` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`code` TEXT NOT NULL,
`onetime` INT NOT NULL,
`expire` BIGINT NOT NULL,
`shop` TEXT NOT NULL,
`credit` INT NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 购买记录数据表
CREATE TABLE `bought` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`userid` BIGINT NOT NULL,
`shopid` BIGINT NOT NULL,
`coupon` TEXT NOT NULL,
`datetime` BIGINT NOT NULL,
`renew` BIGINT(11) NOT NULL,
`price` DECIMAL(12,2) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 工单数据表
CREATE TABLE `ticket` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`title` LONGTEXT NOT NULL,
`status` INT NOT NULL DEFAULT '1',
`content` LONGTEXT NOT NULL,
`rootid` BIGINT NOT NULL,`userid` BIGINT NOT NULL,
`datetime` BIGINT NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 返利记录数据表
CREATE TABLE `payback` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`total` DECIMAL(12,2) NOT NULL,
`userid` BIGINT NOT NULL,
`ref_by` BIGINT NOT NULL,
`ref_get` DECIMAL(12,2) NOT NULL,
`datetime` BIGINT NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 审计规则数据表
CREATE TABLE `detect_list` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`name` LONGTEXT NOT NULL,
`type` INT NOT NULL,
`text` LONGTEXT NOT NULL,
`regex` LONGTEXT NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 审计记录数据表
CREATE TABLE `detect_log` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`user_id` BIGINT NOT NULL,
`node_id` INT NOT NULL,
`list_id` BIGINT NOT NULL,
`datetime` BIGINT NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 中转规则数据表
CREATE TABLE IF NOT EXISTS `relay` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`),
`user_id` bigint(20) NOT NULL,
`source_node_id` bigint(20) NOT NULL,
`dist_node_id` bigint(20) NOT NULL,
`dist_ip` text NOT NULL,
`port` int(11) NOT NULL,
`priority` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 用户订阅日志
CREATE TABLE IF NOT EXISTS `user_subscribe_log` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`user_name` varchar(128) NOT NULL COMMENT '用户名',
`user_id` int(11) NOT NULL COMMENT '用户 ID',
`email` varchar(32) NOT NULL COMMENT '用户邮箱',
`subscribe_type` varchar(20) NOT NULL COMMENT '获取的订阅类型',
`request_ip` varchar(128) NOT NULL COMMENT '请求 IP',
`request_time` datetime NOT NULL COMMENT '请求时间',
`request_user_agent` text COMMENT '请求 UA 信息',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户订阅日志';
-- 审计封禁日志
CREATE TABLE IF NOT EXISTS `detect_ban_log` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`user_name` varchar(128) NOT NULL COMMENT '用户名',
`user_id` int(11) NOT NULL COMMENT '用户 ID',
`email` varchar(32) NOT NULL COMMENT '用户邮箱',
`detect_number` int(11) NOT NULL COMMENT '本次违规次数',
`ban_time` int(11) NOT NULL COMMENT '本次封禁时长',
`start_time` bigint(20) NOT NULL COMMENT '统计开始时间',
`end_time` bigint(20) NOT NULL COMMENT '统计结束时间',
`all_detect_number` int(11) NOT NULL COMMENT '累计违规次数',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='审计封禁日志';
-- 管理员操作记录
CREATE TABLE IF NOT EXISTS `gconfig` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`key` varchar(128) NOT NULL COMMENT '配置键名',
`type` varchar(32) NOT NULL COMMENT '值类型',
`value` text NOT NULL COMMENT '配置值',
`oldvalue` text NOT NULL COMMENT '之前的配置值',
`name` varchar(128) NOT NULL COMMENT '配置名称',
`comment` text NOT NULL COMMENT '配置描述',
`operator_id` int(11) NOT NULL COMMENT '操作员 ID',
`operator_name` varchar(128) NOT NULL COMMENT '操作员名称',
`operator_email` varchar(32) NOT NULL COMMENT '操作员邮箱',
`last_update` bigint(20) NOT NULL COMMENT '修改时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='网站配置';