mirror of
				https://github.com/apache/cloudstack.git
				synced 2025-10-26 08:42:29 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			185 lines
		
	
	
		
			9.7 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
			
		
		
	
	
			185 lines
		
	
	
		
			9.7 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
| SET foreign_key_checks = 0;
 | |
| 
 | |
| --
 | |
| -- Schema upgrade from 2.0 to 2.1
 | |
| --
 | |
| CREATE TABLE `cloud`.`cluster` (
 | |
|   `id` bigint unsigned NOT NULL UNIQUE AUTO_INCREMENT COMMENT 'id',
 | |
|   `name` varchar(255) NOT NULL COMMENT 'name for the cluster',
 | |
|   `pod_id` bigint unsigned NOT NULL COMMENT 'pod id',
 | |
|   `data_center_id` bigint unsigned NOT NULL COMMENT 'data center id',
 | |
|   PRIMARY KEY (`id`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 | |
| 
 | |
| CREATE TABLE `cloud`.`ext_lun_alloc` (
 | |
|   `id` bigint unsigned NOT NULL UNIQUE AUTO_INCREMENT COMMENT 'id',
 | |
|   `size` bigint unsigned NOT NULL COMMENT 'virtual size',
 | |
|   `portal` varchar(255) NOT NULL COMMENT 'ip or host name to the storage server',
 | |
|   `target_iqn` varchar(255) NOT NULL COMMENT 'target iqn',
 | |
|   `data_center_id` bigint unsigned NOT NULL COMMENT 'data center id this belongs to',
 | |
|   `lun` int NOT NULL COMMENT 'lun',
 | |
|   `taken` datetime COMMENT 'time occupied',
 | |
|   `volume_id` bigint unsigned COMMENT 'vm taking this lun',
 | |
|   PRIMARY KEY (`id`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 | |
| 
 | |
| CREATE TABLE `cloud`.`ext_lun_details` (
 | |
|   `id` bigint unsigned NOT NULL UNIQUE AUTO_INCREMENT COMMENT 'id',
 | |
|   `ext_lun_id` bigint unsigned NOT NULL COMMENT 'lun id',
 | |
|   `tag` varchar(255) COMMENT 'tags associated with this vm',
 | |
|   PRIMARY KEY (`id`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 | |
| 
 | |
| CREATE TABLE `cloud`.`storage_pool_details` (
 | |
|   `id` bigint unsigned UNIQUE NOT NULL AUTO_INCREMENT COMMENT 'id',
 | |
|   `pool_id` bigint unsigned NOT NULL COMMENT 'pool the detail is related to',
 | |
|   `name` varchar(255) NOT NULL COMMENT 'name of the detail',
 | |
|   `value` varchar(255) NOT NULL COMMENT 'value of the detail',
 | |
|   PRIMARY KEY (`id`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 | |
| 
 | |
| CREATE TABLE `cloud`.`network_group` (
 | |
|   `id` bigint unsigned NOT NULL auto_increment,
 | |
|   `name` varchar(255) NOT NULL,
 | |
|   `description` varchar(4096) NULL,
 | |
|   `domain_id` bigint unsigned NOT NULL,
 | |
|   `account_id` bigint unsigned NOT NULL,
 | |
|   `account_name` varchar(100) NOT NULL,
 | |
|   PRIMARY KEY  (`id`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 | |
| 
 | |
| CREATE TABLE `cloud`.`network_ingress_rule` (
 | |
|   `id` bigint unsigned NOT NULL auto_increment,
 | |
|   `network_group_id` bigint unsigned NOT NULL,
 | |
|   `start_port` varchar(10) default NULL,
 | |
|   `end_port` varchar(10) default NULL,
 | |
|   `protocol` varchar(16) NOT NULL default 'TCP',
 | |
|   `allowed_network_id` bigint unsigned,
 | |
|   `allowed_network_group` varchar(255) COMMENT 'data duplicated from network_group table to avoid lots of joins when listing rules (the name of the group should be displayed rather than just id)',
 | |
|   `allowed_net_grp_acct` varchar(100) COMMENT 'data duplicated from network_group table to avoid lots of joins when listing rules (the name of the group owner should be displayed)',
 | |
|   `allowed_ip_cidr`  varchar(44),
 | |
|   `create_status` varchar(32) COMMENT 'rule creation status',
 | |
|   PRIMARY KEY  (`id`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 | |
| 
 | |
| CREATE TABLE `cloud`.`network_group_vm_map` (
 | |
|   `id` bigint unsigned NOT NULL auto_increment,
 | |
|   `network_group_id` bigint unsigned NOT NULL,
 | |
|   `instance_id` bigint unsigned NOT NULL,
 | |
|   PRIMARY KEY  (`id`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 | |
| 
 | |
| CREATE TABLE `cloud`.`op_nwgrp_work` (
 | |
|   `id` bigint unsigned UNIQUE NOT NULL AUTO_INCREMENT COMMENT 'id',
 | |
|   `instance_id` bigint unsigned NOT NULL COMMENT 'vm instance that needs rules to be synced.',
 | |
|   `mgmt_server_id` bigint unsigned COMMENT 'management server that has taken up the work of doing rule sync',
 | |
|   `created` datetime NOT NULL COMMENT 'time the entry was requested',
 | |
|   `taken` datetime COMMENT 'time it was taken by the management server',
 | |
|   `step` varchar(32) NOT NULL COMMENT 'Step in the work',
 | |
|   `seq_no` bigint unsigned  COMMENT 'seq number to be sent to agent, uniquely identifies ruleset update',
 | |
|   PRIMARY KEY (`id`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 | |
| 
 | |
| CREATE TABLE `cloud`.`op_vm_ruleset_log` (
 | |
|   `id` bigint unsigned UNIQUE NOT NULL AUTO_INCREMENT COMMENT 'id',
 | |
|   `instance_id` bigint unsigned NOT NULL COMMENT 'vm instance that needs rules to be synced.',
 | |
|   `created` datetime NOT NULL COMMENT 'time the entry was requested',
 | |
|   `logsequence` bigint unsigned  COMMENT 'seq number to be sent to agent, uniquely identifies ruleset update',
 | |
|   PRIMARY KEY (`id`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 | |
| 
 | |
| CREATE TABLE `cloud`.`account_vlan_map` (
 | |
|   `id` bigint unsigned NOT NULL UNIQUE AUTO_INCREMENT,
 | |
|   `account_id` bigint unsigned NOT NULL COMMENT 'account id. foreign key to account table',
 | |
|   `vlan_db_id` bigint unsigned NOT NULL COMMENT 'database id of vlan. foreign key to vlan table',
 | |
|   PRIMARY KEY (`id`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 | |
| 
 | |
| CREATE TABLE `cloud`.`op_dc_link_local_ip_address_alloc` (
 | |
|   `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT 'primary key',
 | |
|   `ip_address` varchar(15) NOT NULL COMMENT 'ip address',
 | |
|   `data_center_id` bigint unsigned NOT NULL COMMENT 'data center it belongs to',
 | |
|   `pod_id` bigint unsigned NOT NULL COMMENT 'pod it belongs to',
 | |
|   `instance_id` bigint unsigned NULL COMMENT 'instance id',
 | |
|   `taken` datetime COMMENT 'Date taken',
 | |
|   PRIMARY KEY (`id`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 | |
| 
 | |
| ALTER TABLE `cloud`.`op_lock` MODIFY COLUMN `key` varchar(128) NOT NULL UNIQUE; -- add UNIQUE constraint
 | |
| ALTER TABLE `cloud`.`op_lock` MODIFY COLUMN `thread` varchar(255) NOT NULL; -- change from varchar(256) to varchar(255)
 | |
| 
 | |
| ALTER TABLE `cloud`.`volumes` DROP COLUMN `name_label`;
 | |
| ALTER TABLE `cloud`.`volumes` DROP COLUMN `template_name`;
 | |
| ALTER TABLE `cloud`.`volumes` ADD COLUMN `pool_type` varchar(64);
 | |
| ALTER TABLE `cloud`.`volumes` ADD COLUMN `recreatable` tinyint(1) unsigned NOT NULL DEFAULT 0;
 | |
| ALTER TABLE `cloud`.`volumes` ADD COLUMN `device_id` bigint unsigned NULL;
 | |
| 
 | |
| --
 | |
| -- after we have data migrated, we can then enforce this at postprocess-20to21.sql
 | |
| -- ALTER TABLE `cloud`.`volumes` MODIFY COLUMN `disk_offering_id` bigint unsigned NOT NULL; -- add NOT NULL constraint
 | |
| 
 | |
| ALTER TABLE `cloud`.`vlan` DROP COLUMN `vlan_name`;
 | |
| 
 | |
| ALTER TABLE `cloud`.`host` ADD COLUMN `cluster_id` bigint unsigned;
 | |
| 
 | |
| --
 | |
| -- enforced in postporcess-20to21.sql
 | |
| ALTER TABLE `cloud`.`host_pod_ref` ADD COLUMN `gateway` varchar(255);	-- need to migrage data with user input  
 | |
| 
 | |
| ALTER TABLE `cloud`.`service_offering` ADD COLUMN `recreatable` tinyint(1) unsigned NOT NULL DEFAULT 0; 
 | |
| ALTER TABLE `cloud`.`service_offering` ADD COLUMN `tags` varchar(255);
 | |
| 
 | |
| ALTER TABLE `cloud`.`user_vm` MODIFY COLUMN `domain_router_id` bigint unsigned;	-- change from NOT NULL to NULL    
 | |
| 
 | |
| ALTER TABLE `cloud`.`event` ADD COLUMN `state` varchar(32) NOT NULL DEFAULT 'Completed';	
 | |
| ALTER TABLE `cloud`.`event` ADD COLUMN `start_id` bigint unsigned NOT NULL DEFAULT 0;
 | |
| 
 | |
| ALTER TABLE `cloud`.`disk_offering` ADD COLUMN `tags` varchar(4096);
 | |
| ALTER TABLE `cloud`.`disk_offering` ADD COLUMN `created` datetime; -- will fill it with the oldest time in old data base
 | |
| 
 | |
| ALTER TABLE `cloud`.`storage_pool` ADD COLUMN `cluster_id` bigint unsigned; -- need to setup default cluster for pods
 | |
| 
 | |
| ALTER TABLE `cloud`.`vm_instance` ADD COLUMN `last_host_id` bigint unsigned;
 | |
| 
 | |
| ALTER TABLE `cloud`.`console_proxy` MODIFY COLUMN `gateway` varchar(15);	-- remove NOT NULL constraint
 | |
| ALTER TABLE `cloud`.`console_proxy` MODIFY COLUMN `public_netmask` varchar(15); -- remove NOT NULL constraint
 | |
| ALTER TABLE `cloud`.`console_proxy` ADD COLUMN `guest_mac_address` varchar(17); -- NOT NULL UNIQUE constraint will be added in postprocess
 | |
| ALTER TABLE `cloud`.`console_proxy` ADD COLUMN `guest_ip_address`  varchar(15);
 | |
| ALTER TABLE `cloud`.`console_proxy` ADD COLUMN `guest_netmask` varchar(15);
 | |
| 
 | |
| ALTER TABLE `cloud`.`secondary_storage_vm` MODIFY COLUMN `gateway` varchar(15); -- remove NOT NULL constraint
 | |
| ALTER TABLE `cloud`.`secondary_storage_vm` MODIFY COLUMN `public_netmask` varchar(15); -- remove NOT NULL constrait
 | |
| ALTER TABLE `cloud`.`secondary_storage_vm` ADD COLUMN `guest_mac_address` varchar(17); -- NOT NULL unique constrait will be added in postprocess
 | |
| ALTER TABLE `cloud`.`secondary_storage_vm` ADD COLUMN `guest_ip_address`  varchar(15) UNIQUE;
 | |
| ALTER TABLE `cloud`.`secondary_storage_vm` ADD COLUMN `guest_netmask` varchar(15);
 | |
| 
 | |
| CREATE TABLE  `cloud`.`service_offering_21` (
 | |
|   `id` bigint unsigned NOT NULL,
 | |
|   `cpu` int(10) unsigned NOT NULL COMMENT '# of cores',
 | |
|   `speed` int(10) unsigned NOT NULL COMMENT 'speed per core in mhz',
 | |
|   `ram_size` bigint unsigned NOT NULL,
 | |
|   `nw_rate` smallint unsigned default 200 COMMENT 'network rate throttle mbits/s',
 | |
|   `mc_rate` smallint unsigned default 10 COMMENT 'mcast rate throttle mbits/s',
 | |
|   `ha_enabled` tinyint(1) unsigned NOT NULL DEFAULT 0 COMMENT 'Enable HA',
 | |
|   `guest_ip_type` varchar(255) NOT NULL DEFAULT 'Virtualized' COMMENT 'Type of guest network -- direct or virtualized',
 | |
|   PRIMARY KEY  (`id`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 | |
| 
 | |
| CREATE TABLE `cloud`.`disk_offering_21` (
 | |
|   `id` bigint unsigned NOT NULL auto_increment,
 | |
|   `domain_id` bigint unsigned,
 | |
|   `name` varchar(255) NOT NULL,
 | |
|   `display_text` varchar(4096) NULL COMMENT 'Description text set by the admin for display purpose only',
 | |
|   `disk_size` bigint unsigned NOT NULL COMMENT 'disk space in mbs',
 | |
|   `mirrored` tinyint(1) unsigned NOT NULL DEFAULT 1 COMMENT 'Enable mirroring?',
 | |
|   `type` varchar(32) COMMENT 'inheritted by who?',
 | |
|   `tags` varchar(4096) COMMENT 'comma separated tags about the disk_offering',
 | |
|   `recreatable` tinyint(1) unsigned NOT NULL DEFAULT 0 COMMENT 'The root disk is always recreatable',
 | |
|   `use_local_storage` tinyint(1) unsigned NOT NULL DEFAULT 0 COMMENT 'Indicates whether local storage pools should be used',
 | |
|   `unique_name` varchar(32) UNIQUE COMMENT 'unique name',
 | |
|   `removed` datetime COMMENT 'date removed',
 | |
|   `created` datetime COMMENT 'date the disk offering was created',
 | |
|   PRIMARY KEY  (`id`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 | |
| 
 |