mirror of
https://github.com/Icinga/icingaweb2.git
synced 2025-09-02 23:58:09 +02:00
141 lines
6.0 KiB
SQL
141 lines
6.0 KiB
SQL
# Icinga Web 2 | (c) 2014 Icinga GmbH | GPLv2+
|
|
|
|
CREATE TABLE `icingaweb_group`(
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`name` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
|
|
`parent` int(10) unsigned NULL DEFAULT NULL,
|
|
`ctime` timestamp NULL DEFAULT NULL,
|
|
`mtime` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `idx_name` (`name`),
|
|
CONSTRAINT `fk_icingaweb_group_parent_id` FOREIGN KEY (`parent`)
|
|
REFERENCES `icingaweb_group` (`id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC;
|
|
|
|
CREATE TABLE `icingaweb_group_membership`(
|
|
`group_id` int(10) unsigned NOT NULL,
|
|
`username` varchar(254) COLLATE utf8mb4_unicode_ci NOT NULL,
|
|
`ctime` timestamp NULL DEFAULT NULL,
|
|
`mtime` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (`group_id`,`username`),
|
|
CONSTRAINT `fk_icingaweb_group_membership_icingaweb_group` FOREIGN KEY (`group_id`)
|
|
REFERENCES `icingaweb_group` (`id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC;
|
|
|
|
CREATE TABLE `icingaweb_user`(
|
|
`name` varchar(254) COLLATE utf8mb4_unicode_ci NOT NULL,
|
|
`active` tinyint(1) NOT NULL,
|
|
`password_hash` varbinary(255) NOT NULL,
|
|
`ctime` timestamp NULL DEFAULT NULL,
|
|
`mtime` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (`name`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC;
|
|
|
|
CREATE TABLE `icingaweb_user_preference`(
|
|
`username` varchar(254) COLLATE utf8mb4_unicode_ci NOT NULL,
|
|
`section` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
|
|
`name` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
|
|
`value` varchar(255) NOT NULL,
|
|
`ctime` timestamp NULL DEFAULT NULL,
|
|
`mtime` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (`username`,`section`,`name`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC;
|
|
|
|
CREATE TABLE `icingaweb_rememberme`(
|
|
id int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
username varchar(254) COLLATE utf8mb4_unicode_ci NOT NULL,
|
|
passphrase varchar(256) NOT NULL,
|
|
random_iv varchar(32) NOT NULL,
|
|
http_user_agent text NOT NULL,
|
|
expires_at timestamp NULL DEFAULT NULL,
|
|
ctime timestamp NULL DEFAULT NULL,
|
|
mtime timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (id)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin ROW_FORMAT=DYNAMIC;
|
|
|
|
# Icinga Web 2 enhanced Dashboards
|
|
|
|
CREATE TABLE icingaweb_dashboard_owner (
|
|
id int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
username varchar(254) NOT NULL COLLATE utf8mb4_unicode_ci,
|
|
|
|
PRIMARY KEY (id),
|
|
UNIQUE KEY idx_icingaweb_dashboard_user_username (username)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
|
|
|
CREATE TABLE icingaweb_dashboard_home (
|
|
id int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
user_id int(10) unsigned NOT NULL,
|
|
name varchar(64) NOT NULL COLLATE utf8mb4_unicode_ci,
|
|
label varchar(64) NOT NULL COLLATE utf8mb4_unicode_ci,
|
|
priority tinyint NOT NULL,
|
|
type enum('public', 'private', 'shared') DEFAULT 'private',
|
|
disabled enum ('n', 'y') DEFAULT 'n',
|
|
PRIMARY KEY (id),
|
|
UNIQUE KEY idx_icingaweb_dashboard_home_user_name (user_id, name),
|
|
CONSTRAINT `fk_dashboard_home_dashboard_user` FOREIGN KEY (`user_id`)
|
|
REFERENCES icingaweb_dashboard_owner (id) ON DELETE CASCADE ON UPDATE CASCADE
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
|
|
|
CREATE TABLE icingaweb_dashboard (
|
|
id binary(20) NOT NULL,
|
|
home_id int(10) unsigned NOT NULL,
|
|
name varchar(64) NOT NULL COLLATE utf8mb4_unicode_ci,
|
|
label varchar(64) NOT NULL COLLATE utf8mb4_unicode_ci,
|
|
priority tinyint NOT NULL,
|
|
PRIMARY KEY (id),
|
|
KEY fk_dashboard_dashboard_home (home_id),
|
|
CONSTRAINT fk_icingaweb_dashboard_icingaweb_dashboard_home FOREIGN KEY (home_id)
|
|
REFERENCES icingaweb_dashboard_home (id) ON DELETE CASCADE ON UPDATE CASCADE
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
|
|
|
CREATE TABLE icingaweb_dashlet (
|
|
id binary(20) NOT NULL,
|
|
dashboard_id binary(20) NOT NULL,
|
|
name varchar(64) NOT NULL COLLATE utf8mb4_unicode_ci,
|
|
label varchar(254) NOT NULL COLLATE utf8mb4_unicode_ci,
|
|
url varchar(2048) NOT NULL COLLATE utf8mb4_bin,
|
|
priority tinyint NOT NULL,
|
|
disabled enum ('n', 'y') DEFAULT 'n',
|
|
description text DEFAULT NULL COLLATE utf8mb4_unicode_ci,
|
|
PRIMARY KEY (id),
|
|
KEY `fk_icingaweb_dashlet_icingaweb_dashboard` (`dashboard_id`),
|
|
CONSTRAINT fk_icingaweb_dashlet_icingaweb_dashboard FOREIGN KEY (dashboard_id)
|
|
REFERENCES icingaweb_dashboard (id) ON DELETE CASCADE ON UPDATE CASCADE
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
|
|
|
CREATE TABLE icingaweb_module_dashlet (
|
|
id binary(20) NOT NULL,
|
|
name varchar(64) NOT NULL COLLATE utf8mb4_unicode_ci,
|
|
label varchar(64) NOT NULL COLLATE utf8mb4_unicode_ci,
|
|
module varchar(64) NOT NULL COLLATE utf8mb4_unicode_ci,
|
|
pane varchar(64) DEFAULT NULL COLLATE utf8mb4_unicode_ci,
|
|
url varchar(2048) NOT NULL COLLATE utf8mb4_bin,
|
|
description text DEFAULT NULL COLLATE utf8mb4_unicode_ci,
|
|
priority tinyint DEFAULT 0,
|
|
PRIMARY KEY (id)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
|
|
|
CREATE TABLE icingaweb_system_dashlet (
|
|
dashlet_id binary(20) NOT NULL,
|
|
module_dashlet_id binary(20) DEFAULT NULL,
|
|
|
|
PRIMARY KEY (dashlet_id),
|
|
|
|
CONSTRAINT fk_icingaweb_system_dashlet_icingaweb_dashlet FOREIGN KEY (dashlet_id)
|
|
REFERENCES icingaweb_dashlet (id) ON DELETE CASCADE ON UPDATE CASCADE,
|
|
CONSTRAINT fk_icingaweb_system_dashlet_icingaweb_module_dashlet FOREIGN KEY (module_dashlet_id)
|
|
REFERENCES icingaweb_module_dashlet (id) ON DELETE SET NULL ON UPDATE CASCADE
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
|
|
|
CREATE TABLE icingaweb_schema (
|
|
id int unsigned NOT NULL AUTO_INCREMENT,
|
|
version smallint unsigned NOT NULL,
|
|
timestamp int unsigned NOT NULL,
|
|
|
|
PRIMARY KEY (id)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin ROW_FORMAT=DYNAMIC;
|
|
|
|
INSERT INTO icingaweb_schema (version, timestamp)
|
|
VALUES (6, UNIX_TIMESTAMP());
|