|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286 |
- set names utf8;
-
- drop database if exists n9e_rdb;
- create database n9e_rdb;
- use n9e_rdb;
-
- CREATE TABLE `user`
- (
- `id` int unsigned not null AUTO_INCREMENT,
- `uuid` varchar(128) not null comment 'use in cookie',
- `username` varchar(64) not null comment 'login name, cannot rename',
- `password` varchar(128) not null default '',
- `dispname` varchar(32) not null default '' comment 'display name, chinese name',
- `phone` varchar(16) not null default '',
- `email` varchar(64) not null default '',
- `im` varchar(64) not null default '',
- `portrait` varchar(2048) not null default '',
- `intro` text not null default '',
- `is_root` tinyint(1) not null,
- `leader_id` int unsigned not null default 0,
- `leader_name` varchar(32) not null default '',
- PRIMARY KEY (`id`),
- UNIQUE KEY (`username`),
- UNIQUE KEY (`uuid`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `user_token`
- (
- `user_id` int unsigned not null,
- `username` varchar(128) not null,
- `token` varchar(128) not null,
- KEY (`user_id`),
- KEY (`username`),
- UNIQUE KEY (`token`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `invite`
- (
- `id` int unsigned not null AUTO_INCREMENT,
- `token` varchar(128) not null,
- `expire` bigint not null,
- `creator` varchar(32) not null,
- PRIMARY KEY (`id`),
- UNIQUE KEY (`token`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `team`
- (
- `id` int unsigned not null AUTO_INCREMENT,
- `ident` varchar(255) not null,
- `name` varchar(255) not null default '',
- `note` varchar(255) not null default '',
- `mgmt` int(1) not null comment '0: member manage; 1: admin manage',
- `creator` int unsigned not null,
- `last_updated` timestamp not null default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
- PRIMARY KEY (`id`),
- UNIQUE KEY (`ident`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `team_user`
- (
- `team_id` int unsigned not null,
- `user_id` int unsigned not null,
- `is_admin` tinyint(1) not null,
- KEY (`team_id`),
- KEY (`user_id`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `configs`
- (
- `id` int unsigned not null AUTO_INCREMENT,
- `ckey` varchar(255) not null,
- `cval` varchar(255) not null default '',
- `last_updated` timestamp not null default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
- PRIMARY KEY (`id`),
- UNIQUE KEY (`ckey`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `node_cate`
- (
- `id` int unsigned not null AUTO_INCREMENT,
- `ident` char(128) not null default '' comment 'cluster,service,module,department,product...',
- `name` varchar(255) not null default '',
- `icon_color` char(7) not null default '' comment 'e.g. #108AC6',
- `protected` tinyint(1) not null default 0 comment 'if =1, cannot delete',
- PRIMARY KEY (`id`),
- KEY (`ident`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- insert into node_cate(ident, name, icon_color, protected)
- values ('tenant', '租户', '#de83cb', 1);
- insert into node_cate(ident, name, icon_color, protected)
- values ('organization', '组织', '#ff8e75', 1);
- insert into node_cate(ident, name, icon_color, protected)
- values ('project', '项目', '#f6bb4a', 1);
- insert into node_cate(ident, name, icon_color, protected)
- values ('module', '模块', '#6dc448', 1);
- insert into node_cate(ident, name, icon_color, protected)
- values ('cluster', '集群', '#94c7c6', 1);
- insert into node_cate(ident, name, icon_color, protected)
- values ('resource', '资源', '#a7aae6', 1);
-
- CREATE TABLE `node_cate_field`
- (
- `id` int unsigned not null AUTO_INCREMENT,
- `cate` char(32) not null default '' comment 'cluster,service,module,department,product...',
- `field_ident` varchar(255) not null comment 'english identity',
- `field_name` varchar(255) not null comment 'chinese name',
- `field_type` varchar(64) not null,
- `field_required` tinyint(1) not null default 0,
- `field_extra` varchar(2048) not null default '',
- `last_updated` timestamp not null default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
- PRIMARY KEY (`id`),
- KEY (`cate`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `node_field_value`
- (
- `id` int unsigned not null AUTO_INCREMENT,
- `node_id` int unsigned not null,
- `field_ident` varchar(255) not null,
- `field_value` varchar(1024) not null default '',
- PRIMARY KEY (`id`),
- KEY (`node_id`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `node`
- (
- `id` int unsigned not null AUTO_INCREMENT,
- `pid` int unsigned not null,
- `ident` varchar(128) not null,
- `name` varchar(255) not null default '',
- `note` varchar(255) not null default '',
- `path` varchar(255) not null comment 'ident1.ident2.ident3',
- `leaf` tinyint(1) not null,
- `cate` char(128) not null default '' comment 'cluster,service,module,department,product...',
- `icon_color` char(7) not null default '' comment 'e.g. #108AC6',
- `icon_char` char(1) not null default '' comment 'cluster->C,service->S,module->M',
- `proxy` tinyint(1) not null default 0 comment '0:myself management, 1:other module management',
- `creator` varchar(64) not null,
- `last_updated` timestamp not null default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
- PRIMARY KEY (`id`),
- UNIQUE KEY (`path`),
- KEY (`cate`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- insert into node(id, ident, name, note, pid, path, leaf, cate, icon_color, icon_char, proxy, creator)
- values (1, 'inner', '内置租户', '用于平台管理视角的资源监控', 0, 'inner', 0, 'tenant', '#de83cb', 'T', 0, 'root');
-
- CREATE TABLE `node_trash`
- (
- `id` int unsigned not null,
- `pid` int unsigned not null,
- `ident` varchar(128) not null,
- `name` varchar(255) not null default '',
- `note` varchar(255) not null default '',
- `path` varchar(255) not null comment 'ident1.ident2.ident3',
- `leaf` tinyint(1) not null,
- `cate` char(128) not null default '' comment 'cluster,service,module,department,product...',
- `icon_color` char(7) not null default '' comment 'e.g. #108AC6',
- `icon_char` char(1) not null default '' comment 'cluster->C,service->S,module->M',
- `proxy` tinyint(1) not null default 0 comment '0:myself management, 1:other module management',
- `creator` varchar(64) not null,
- `last_updated` timestamp not null default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
- PRIMARY KEY (`id`),
- UNIQUE KEY (`path`),
- KEY (`cate`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `node_admin`
- (
- `node_id` int unsigned not null,
- `user_id` int unsigned not null,
- KEY (`node_id`),
- KEY (`user_id`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `resource`
- (
- `id` int unsigned not null AUTO_INCREMENT,
- `uuid` varchar(255) not null,
- `ident` varchar(255) not null,
- `name` varchar(255) not null default '',
- `labels` varchar(255) not null default '' comment 'e.g. flavor=2c4g300g,region=bj,os=windows',
- `note` varchar(255) not null default '',
- `extend` varchar(1024) not null default '' comment 'json',
- `cate` varchar(64) not null comment 'host,vm,container,switch,redis,mongo',
- `tenant` varchar(128) not null default '',
- `last_updated` timestamp not null default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
- PRIMARY KEY (`id`),
- UNIQUE KEY (`uuid`),
- UNIQUE KEY (`ident`),
- KEY (`tenant`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `node_resource`
- (
- `node_id` int unsigned not null,
- `res_id` int unsigned not null,
- KEY (`node_id`),
- KEY (`res_id`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `node_role`
- (
- `id` int unsigned not null AUTO_INCREMENT,
- `node_id` int unsigned not null,
- `username` varchar(64) not null,
- `role_id` int unsigned not null,
- PRIMARY KEY (`id`),
- KEY (`node_id`),
- KEY (`role_id`),
- KEY (`username`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `role`
- (
- `id` int unsigned not null AUTO_INCREMENT,
- `name` varchar(128) not null default '',
- `note` varchar(255) not null default '',
- `cate` char(6) not null default '' comment 'category: global or local',
- PRIMARY KEY (`id`),
- UNIQUE KEY (`name`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `role_operation`
- (
- `id` int unsigned not null AUTO_INCREMENT,
- `role_id` int unsigned not null,
- `operation` varchar(255) not null,
- PRIMARY KEY (`id`),
- KEY (`role_id`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `role_global_user`
- (
- `role_id` int unsigned not null,
- `user_id` int unsigned not null,
- KEY (`role_id`),
- KEY (`user_id`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `login_log`
- (
- `id` int unsigned not null AUTO_INCREMENT,
- `username` varchar(64) not null,
- `client` varchar(128) not null comment 'client ip',
- `clock` bigint not null comment 'login timestamp',
- `loginout` char(3) not null comment 'in or out',
- PRIMARY KEY (`id`),
- KEY (`username`),
- KEY (`clock`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
-
- CREATE TABLE `operation_log`
- (
- `id` bigint unsigned not null AUTO_INCREMENT,
- `username` varchar(64) not null,
- `clock` bigint not null comment 'operation timestamp',
- `res_cl` char(16) not null default '' comment 'resource class',
- `res_id` varchar(128) not null default '',
- `detail` varchar(512) not null,
- PRIMARY KEY (`id`),
- KEY (`clock`),
- KEY (`res_cl`, `res_id`)
- ) ENGINE = InnoDB
- DEFAULT CHARSET = utf8;
|