Skip to content

Commit

Permalink
BIGTOP-4173 : DDL file to create all related tables (MySQL) (#27)
Browse files Browse the repository at this point in the history
  • Loading branch information
HalimKim authored Jul 29, 2024
1 parent 388a704 commit d2a2dae
Showing 1 changed file with 251 additions and 50 deletions.
301 changes: 251 additions & 50 deletions bigtop-manager-server/src/main/resources/ddl/MySQL-DDL-CREATE.sql
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,6 @@
*/


--
-- DROP DATABASE IF EXISTS `ambari`;
-- DROP USER `ambari`;

# delimiter ;

# CREATE DATABASE `bigtop_manager` /*!40100 DEFAULT CHARACTER SET utf8 */;
Expand All @@ -40,6 +36,23 @@ prepare statement from @engine_stmt;
execute statement;
DEALLOCATE PREPARE statement;

CREATE TABLE `audit_log`
(
`id` BIGINT NOT NULL,
`args` LONGTEXT,
`create_by` BIGINT,
`create_time` DATETIME,
`operation_desc` VARCHAR(255),
`operation_summary` VARCHAR(255),
`tag_desc` VARCHAR(255),
`tag_name` VARCHAR(255),
`update_by` BIGINT,
`update_time` DATETIME,
`uri` VARCHAR(255),
`user_id` BIGINT,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE `sequence`
(
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
Expand All @@ -58,89 +71,277 @@ CREATE TABLE `user`
`status` BIT(1) DEFAULT 1 COMMENT '0-Disable, 1-Enable',
`create_time` DATETIME DEFAULT NULL,
`update_time` DATETIME DEFAULT NULL,
`create_by` BIGINT,
`update_by` BIGINT,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_username` (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE `cluster`
(
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
`cluster_name` VARCHAR(255) DEFAULT NULL COMMENT 'Cluster Name',
`cluster_desc` VARCHAR(255) DEFAULT NULL COMMENT 'Cluster Name',
`cluster_type` SMALLINT UNSIGNED DEFAULT 1 COMMENT '1-Physical Machine, 2-Kubernetes',
`selected` BIT(1) DEFAULT 1 COMMENT '0-Disable, 1-Enable',
`create_time` DATETIME DEFAULT NULL,
`update_time` DATETIME DEFAULT NULL,
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
`cluster_name` VARCHAR(255) DEFAULT NULL COMMENT 'Cluster Name',
`cluster_desc` VARCHAR(255) DEFAULT NULL COMMENT 'Cluster Description',
`cluster_type` SMALLINT UNSIGNED DEFAULT 1 COMMENT '1-Physical Machine, 2-Kubernetes',
`selected` BIT(1) DEFAULT 1 COMMENT '0-Disable, 1-Enable',
`create_time` DATETIME DEFAULT NULL,
`update_time` DATETIME DEFAULT NULL,
`create_by` BIGINT,
`packages` VARCHAR(255),
`repo_template` VARCHAR(255),
`root` VARCHAR(255),
`state` VARCHAR(255),
`update_by` BIGINT,
`user_group` VARCHAR(255),
`stack_id` BIGINT,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_cluster_name` (`cluster_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE `component`
(
`id` BIGINT NOT NULL,
`category` VARCHAR(255),
`command_script` VARCHAR(255),
`component_name` VARCHAR(255),
`create_by` BIGINT,
`create_time` DATETIME,
`custom_commands` LONGTEXT,
`display_name` VARCHAR(255),
`quick_link` VARCHAR(255),
`update_by` BIGINT,
`update_time` DATETIME,
`cluster_id` BIGINT,
`service_id` BIGINT,
PRIMARY KEY (id),
KEY `idx_component_cluster_id` (cluster_id),
KEY `idx_component_service_id` (service_id),
UNIQUE KEY `uk_component_name` (`component_name`, `cluster_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE `host_component`
(
`id` BIGINT NOT NULL,
`create_by` BIGINT,
`create_time` DATETIME,
`state` VARCHAR(255),
`update_by` BIGINT,
`update_time` DATETIME,
`component_id` BIGINT,
`host_id` BIGINT,
PRIMARY KEY (id),
KEY `idx_hc_component_id` (component_id),
KEY `idx_hc_host_id` (host_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE `host`
(
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
`cluster_id` BIGINT(20) UNSIGNED NOT NULL,
`hostname` VARCHAR(255) DEFAULT NULL,
`ipv4` VARCHAR(32) DEFAULT NULL,
`ipv6` VARCHAR(32) DEFAULT NULL,
`arch` VARCHAR(32) DEFAULT NULL,
`os` VARCHAR(32) DEFAULT NULL,
`processor_count` INT DEFAULT NULL,
`physical_memory` BIGINT DEFAULT NULL COMMENT 'Total Physical Memory(Bytes)',
`state` VARCHAR(32) DEFAULT NULL,
`create_time` DATETIME DEFAULT NULL,
`update_time` DATETIME DEFAULT NULL,
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
`cluster_id` BIGINT(20) UNSIGNED NOT NULL,
`hostname` VARCHAR(255) DEFAULT NULL,
`ipv4` VARCHAR(32) DEFAULT NULL,
`ipv6` VARCHAR(32) DEFAULT NULL,
`arch` VARCHAR(32) DEFAULT NULL,
`os` VARCHAR(32) DEFAULT NULL,
`processor_count` INT DEFAULT NULL,
`physical_memory` BIGINT DEFAULT NULL COMMENT 'Total Physical Memory(Bytes)',
`state` VARCHAR(32) DEFAULT NULL,
`create_time` DATETIME DEFAULT NULL,
`update_time` DATETIME DEFAULT NULL,
`available_processors` INTEGER,
`create_by` BIGINT,
`free_disk` BIGINT,
`free_memory_size` BIGINT,
`total_disk` BIGINT,
`total_memory_size` BIGINT,
`update_by` BIGINT,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_hostname` (`hostname`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE `repo` (
CREATE TABLE `repo`
(
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
`cluster_id` BIGINT(20) UNSIGNED NOT NULL,
`os` VARCHAR(32) DEFAULT NULL,
`arch` VARCHAR(32) DEFAULT NULL,
`base_url` VARCHAR(64) DEFAULT NULL,
`repo_id` VARCHAR(32) DEFAULT NULL,
`repo_name` VARCHAR(64) DEFAULT NULL,
`create_time` DATETIME DEFAULT NULL,
`update_time` DATETIME DEFAULT NULL,
`os` VARCHAR(32) DEFAULT NULL,
`arch` VARCHAR(32) DEFAULT NULL,
`base_url` VARCHAR(64) DEFAULT NULL,
`repo_id` VARCHAR(32) DEFAULT NULL,
`repo_name` VARCHAR(64) DEFAULT NULL,
`create_time` DATETIME DEFAULT NULL,
`update_time` DATETIME DEFAULT NULL,
`create_by` BIGINT,
`update_by` BIGINT,
PRIMARY KEY (`id`),
KEY `idx_cluster_id` (`cluster_id`)
KEY `idx_cluster_id` (`cluster_id`),
UNIQUE KEY `uk_repo_id` (`repo_id`, `os`, `arch`, `cluster_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE `stack`
(
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
`stack_name` VARCHAR(32) NOT NULL,
`stack_version` VARCHAR(32) NOT NULL,
`create_time` DATETIME DEFAULT NULL,
`update_time` DATETIME DEFAULT NULL,
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
`stack_name` VARCHAR(32) NOT NULL,
`stack_version` VARCHAR(32) NOT NULL,
`create_time` DATETIME DEFAULT NULL,
`update_time` DATETIME DEFAULT NULL,
`create_by` BIGINT,
`update_by` BIGINT,
`component_name` VARCHAR(255),
`context` LONGTEXT,
`order` INTEGER,
`service_name` VARCHAR(255),
PRIMARY KEY (`id`),
UNIQUE KEY `uk_stack_name` (`stack_name`,`stack_version`)
UNIQUE KEY `uk_stack` (`stack_name`, `stack_version`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;

CREATE TABLE `task`
(
`id` BIGINT NOT NULL,
`command` VARCHAR(255),
`command_script` VARCHAR(255),
`component_name` VARCHAR(255),
`content` LONGTEXT,
`create_by` BIGINT,
`create_time` DATETIME,
`custom_command` VARCHAR(255),
`custom_commands` LONGTEXT,
`hostname` VARCHAR(255),
`message_id` VARCHAR(255),
`name` VARCHAR(255),
`service_group` VARCHAR(255),
`service_name` VARCHAR(255),
`service_user` VARCHAR(255),
`stack_name` VARCHAR(255),
`stack_version` VARCHAR(255),
`state` VARCHAR(255),
`update_by` BIGINT,
`update_time` DATETIME,
`cluster_id` BIGINT,
`job_id` BIGINT,
`stage_id` BIGINT,
PRIMARY KEY (id),
KEY idx_task_cluster_id (cluster_id),
KEY idx_task_job_id (job_id),
KEY idx_task_stage_id (stage_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE `job`
(
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
`cluster_id` BIGINT(20) UNSIGNED DEFAULT NULL,
`state` VARCHAR(32) NOT NULL,
`context` TEXT NOT NULL,
`context` LONGTEXT NOT NULL,
`create_time` DATETIME DEFAULT NULL,
`update_time` DATETIME DEFAULT NULL,
`create_by` BIGINT,
`name` VARCHAR(255),
`update_by` BIGINT,
PRIMARY KEY (`id`),
KEY `idx_cluster_id` (`cluster_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE `type_config`
(
`id` BIGINT NOT NULL,
`create_by` BIGINT,
`create_time` DATETIME,
`properties_json` LONGTEXT,
`type_name` VARCHAR(255),
`update_by` BIGINT,
`update_time` DATETIME,
`service_config_id` BIGINT,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE `service`
(
`id` BIGINT NOT NULL,
`create_by` BIGINT,
`create_time` DATETIME,
`display_name` VARCHAR(255),
`os_specifics` VARCHAR(255),
`required_services` VARCHAR(255),
`service_desc` VARCHAR(255),
`service_group` VARCHAR(255),
`service_name` VARCHAR(255),
`service_user` VARCHAR(255),
`service_version` VARCHAR(255),
`update_by` BIGINT,
`update_time` DATETIME,
`cluster_id` BIGINT,
PRIMARY KEY (id),
KEY idx_service_cluster_id (cluster_id),
UNIQUE KEY `uk_service_name` (`service_name`, `cluster_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE `service_config`
(
`id` BIGINT NOT NULL,
`config_desc` VARCHAR(255),
`create_by` BIGINT,
`create_time` DATETIME,
`selected` TINYINT(1) default 0,
`update_by` BIGINT,
`update_time` DATETIME,
`version` INTEGER,
`cluster_id` BIGINT,
`service_id` BIGINT,
PRIMARY KEY (id),
KEY idx_sc_cluster_id (cluster_id),
KEY idx_sc_service_id (service_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE `setting`
(
`id` BIGINT NOT NULL,
`config_data` LONGTEXT,
`create_by` BIGINT,
`create_time` DATETIME,
`type_name` VARCHAR(255),
`update_by` BIGINT,
`update_time` DATETIME,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE `stage`
(
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
`name` VARCHAR(32) NOT NULL,
`cluster_id` BIGINT(20) UNSIGNED DEFAULT NULL,
`job_id` BIGINT(20) UNSIGNED NOT NULL,
`state` VARCHAR(32) NOT NULL,
`stage_order` INT UNSIGNED DEFAULT NULL,
`create_time` DATETIME DEFAULT NULL,
`update_time` DATETIME DEFAULT NULL,
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
`name` VARCHAR(32) NOT NULL,
`cluster_id` BIGINT(20) UNSIGNED DEFAULT NULL,
`job_id` BIGINT(20) UNSIGNED NOT NULL,
`state` VARCHAR(32) NOT NULL,
`stage_order` INT UNSIGNED DEFAULT NULL,
`create_time` DATETIME DEFAULT NULL,
`update_time` DATETIME DEFAULT NULL,
`component_name` VARCHAR(255),
`context` LONGTEXT,
`create_by` BIGINT,
`order` INTEGER,
`service_name` VARCHAR(255),
`update_by` BIGINT,
PRIMARY KEY (`id`),
KEY `idx_cluster_id` (`cluster_id`),
KEY `idx_job_id` (`job_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
KEY `idx_cluster_id` (`cluster_id`),
KEY `idx_job_id` (`job_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- Initialize sequence table.
INSERT INTO sequence(seq_name, seq_count)
VALUES ('audit_log_generator', 0),
('cluster_generator', 0),
('stack_generator', 0),
('service_generator', 0),
('task_generator', 0),
('host_generator', 0),
('user_generator', 0),
('repo_generator', 0),
('host_component_generator', 0),
('service_config_generator', 0),
('job_generator', 0),
('type_config_generator', 0),
('component_generator', 0),
('stage_generator', 0),
('settings_generator', 0);

-- Adding default admin user
INSERT INTO bigtop_manager.user (id, create_time, update_time, nickname, password, status, username)
VALUES (1, now(), now(), 'Administrator', '21232f297a57a5a743894a0e4a801fc3', true, 'admin');

0 comments on commit d2a2dae

Please sign in to comment.