dolphinscheduler_ddl.sql 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262
  1. /*
  2. * Licensed to the Apache Software Foundation (ASF) under one or more
  3. * contributor license agreements. See the NOTICE file distributed with
  4. * this work for additional information regarding copyright ownership.
  5. * The ASF licenses this file to You under the Apache License, Version 2.0
  6. * (the "License"); you may not use this file except in compliance with
  7. * the License. You may obtain a copy of the License at
  8. *
  9. * http://www.apache.org/licenses/LICENSE-2.0
  10. *
  11. * Unless required by applicable law or agreed to in writing, software
  12. * distributed under the License is distributed on an "AS IS" BASIS,
  13. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. * See the License for the specific language governing permissions and
  15. * limitations under the License.
  16. */
  17. SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
  18. -- ac_escheduler_T_t_escheduler_version
  19. drop PROCEDURE if EXISTS ac_escheduler_T_t_escheduler_version;
  20. delimiter d//
  21. CREATE PROCEDURE ac_escheduler_T_t_escheduler_version()
  22. BEGIN
  23. drop table if exists t_escheduler_version;
  24. CREATE TABLE IF NOT EXISTS `t_escheduler_version` (
  25. `id` int(11) NOT NULL AUTO_INCREMENT,
  26. `version` varchar(200) NOT NULL,
  27. PRIMARY KEY (`id`),
  28. UNIQUE KEY `version_UNIQUE` (`version`)
  29. ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='version';
  30. END;
  31. d//
  32. delimiter ;
  33. CALL ac_escheduler_T_t_escheduler_version;
  34. DROP PROCEDURE ac_escheduler_T_t_escheduler_version;
  35. -- ac_escheduler_T_t_escheduler_user_C_queue
  36. drop PROCEDURE if EXISTS ac_escheduler_T_t_escheduler_user_C_queue;
  37. delimiter d//
  38. CREATE PROCEDURE ac_escheduler_T_t_escheduler_user_C_queue()
  39. BEGIN
  40. IF NOT EXISTS (SELECT 1 FROM information_schema.COLUMNS
  41. WHERE TABLE_NAME='t_escheduler_user'
  42. AND TABLE_SCHEMA=(SELECT DATABASE())
  43. AND COLUMN_NAME='queue')
  44. THEN
  45. ALTER TABLE t_escheduler_user ADD COLUMN queue varchar(64) COMMENT 'queue' AFTER update_time;
  46. END IF;
  47. END;
  48. d//
  49. delimiter ;
  50. CALL ac_escheduler_T_t_escheduler_user_C_queue;
  51. DROP PROCEDURE ac_escheduler_T_t_escheduler_user_C_queue;
  52. -- ac_escheduler_T_t_escheduler_access_token
  53. drop PROCEDURE if EXISTS ac_escheduler_T_t_escheduler_access_token;
  54. delimiter d//
  55. CREATE PROCEDURE ac_escheduler_T_t_escheduler_access_token()
  56. BEGIN
  57. drop table if exists t_escheduler_access_token;
  58. CREATE TABLE IF NOT EXISTS `t_escheduler_access_token` (
  59. `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'key',
  60. `user_id` int(11) DEFAULT NULL COMMENT 'user id',
  61. `token` varchar(64) DEFAULT NULL COMMENT 'token',
  62. `expire_time` datetime DEFAULT NULL COMMENT 'end time of token ',
  63. `create_time` datetime DEFAULT NULL COMMENT 'create time',
  64. `update_time` datetime DEFAULT NULL COMMENT 'update time',
  65. PRIMARY KEY (`id`)
  66. ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
  67. END;
  68. d//
  69. delimiter ;
  70. CALL ac_escheduler_T_t_escheduler_access_token;
  71. DROP PROCEDURE ac_escheduler_T_t_escheduler_access_token;
  72. -- ac_escheduler_T_t_escheduler_error_command
  73. drop PROCEDURE if EXISTS ac_escheduler_T_t_escheduler_error_command;
  74. delimiter d//
  75. CREATE PROCEDURE ac_escheduler_T_t_escheduler_error_command()
  76. BEGIN
  77. drop table if exists t_escheduler_error_command;
  78. CREATE TABLE IF NOT EXISTS `t_escheduler_error_command` (
  79. `id` int(11) NOT NULL COMMENT 'key',
  80. `command_type` tinyint(4) NULL DEFAULT NULL COMMENT 'command type',
  81. `executor_id` int(11) NULL DEFAULT NULL COMMENT 'executor id',
  82. `process_definition_id` int(11) NULL DEFAULT NULL COMMENT 'process definition id',
  83. `command_param` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT 'json command parameters',
  84. `task_depend_type` tinyint(4) NULL DEFAULT NULL COMMENT 'task depend type',
  85. `failure_strategy` tinyint(4) NULL DEFAULT 0 COMMENT 'failure strategy',
  86. `warning_type` tinyint(4) NULL DEFAULT 0 COMMENT 'warning type',
  87. `warning_group_id` int(11) NULL DEFAULT NULL COMMENT 'warning group id',
  88. `schedule_time` datetime NULL DEFAULT NULL COMMENT 'scheduler time',
  89. `start_time` datetime NULL DEFAULT NULL COMMENT 'start time',
  90. `update_time` datetime NULL DEFAULT NULL COMMENT 'update time',
  91. `dependence` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT 'dependence',
  92. `process_instance_priority` int(11) NULL DEFAULT NULL COMMENT 'process instance priority, 0 Highest,1 High,2 Medium,3 Low,4 Lowest',
  93. `worker_group_id` int(11) NULL DEFAULT -1 COMMENT 'worker group id',
  94. `message` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT 'message',
  95. PRIMARY KEY (`id`) USING BTREE
  96. ) ENGINE = InnoDB AUTO_INCREMENT=1 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
  97. END;
  98. d//
  99. delimiter ;
  100. CALL ac_escheduler_T_t_escheduler_error_command;
  101. DROP PROCEDURE ac_escheduler_T_t_escheduler_error_command;
  102. -- ac_escheduler_T_t_escheduler_worker_group
  103. drop PROCEDURE if EXISTS ac_escheduler_T_t_escheduler_worker_group;
  104. delimiter d//
  105. CREATE PROCEDURE ac_escheduler_T_t_escheduler_worker_group()
  106. BEGIN
  107. drop table if exists t_escheduler_worker_group;
  108. CREATE TABLE IF NOT EXISTS `t_escheduler_worker_group` (
  109. `id` bigint(11) NOT NULL AUTO_INCREMENT COMMENT 'id',
  110. `name` varchar(256) NULL DEFAULT NULL COMMENT 'worker group name',
  111. `ip_list` varchar(256) NULL DEFAULT NULL COMMENT 'worker ip list. split by [,] ',
  112. `create_time` datetime NULL DEFAULT NULL COMMENT 'create time',
  113. `update_time` datetime NULL DEFAULT NULL COMMENT 'update time',
  114. PRIMARY KEY (`id`) USING BTREE
  115. ) ENGINE = InnoDB AUTO_INCREMENT=1 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
  116. END;
  117. d//
  118. delimiter ;
  119. CALL ac_escheduler_T_t_escheduler_worker_group;
  120. DROP PROCEDURE ac_escheduler_T_t_escheduler_worker_group;
  121. -- ac_escheduler_T_t_escheduler_task_instance_C_worker_group_id
  122. drop PROCEDURE if EXISTS ac_escheduler_T_t_escheduler_task_instance_C_worker_group_id;
  123. delimiter d//
  124. CREATE PROCEDURE ac_escheduler_T_t_escheduler_task_instance_C_worker_group_id()
  125. BEGIN
  126. IF NOT EXISTS (SELECT 1 FROM information_schema.COLUMNS
  127. WHERE TABLE_NAME='t_escheduler_task_instance'
  128. AND TABLE_SCHEMA=(SELECT DATABASE())
  129. AND COLUMN_NAME='worker_group_id')
  130. THEN
  131. ALTER TABLE t_escheduler_task_instance ADD COLUMN `worker_group_id` int(11) NULL DEFAULT -1 COMMENT 'worker group id' AFTER `task_instance_priority`;
  132. END IF;
  133. END;
  134. d//
  135. delimiter ;
  136. CALL ac_escheduler_T_t_escheduler_task_instance_C_worker_group_id;
  137. DROP PROCEDURE ac_escheduler_T_t_escheduler_task_instance_C_worker_group_id;
  138. -- ac_escheduler_T_t_escheduler_command_C_worker_group_id
  139. drop PROCEDURE if EXISTS ac_escheduler_T_t_escheduler_command_C_worker_group_id;
  140. delimiter d//
  141. CREATE PROCEDURE ac_escheduler_T_t_escheduler_command_C_worker_group_id()
  142. BEGIN
  143. IF NOT EXISTS (SELECT 1 FROM information_schema.COLUMNS
  144. WHERE TABLE_NAME='t_escheduler_command'
  145. AND TABLE_SCHEMA=(SELECT DATABASE())
  146. AND COLUMN_NAME='worker_group_id')
  147. THEN
  148. ALTER TABLE t_escheduler_command ADD COLUMN `worker_group_id` int(11) NULL DEFAULT -1 COMMENT 'worker group id' AFTER `process_instance_priority`;
  149. END IF;
  150. END;
  151. d//
  152. delimiter ;
  153. CALL ac_escheduler_T_t_escheduler_command_C_worker_group_id;
  154. DROP PROCEDURE ac_escheduler_T_t_escheduler_command_C_worker_group_id;
  155. -- ac_escheduler_T_t_escheduler_schedules_C_worker_group_id
  156. drop PROCEDURE if EXISTS ac_escheduler_T_t_escheduler_schedules_C_worker_group_id;
  157. delimiter d//
  158. CREATE PROCEDURE ac_escheduler_T_t_escheduler_schedules_C_worker_group_id()
  159. BEGIN
  160. IF NOT EXISTS (SELECT 1 FROM information_schema.COLUMNS
  161. WHERE TABLE_NAME='t_escheduler_schedules'
  162. AND TABLE_SCHEMA=(SELECT DATABASE())
  163. AND COLUMN_NAME='worker_group_id')
  164. THEN
  165. ALTER TABLE t_escheduler_schedules ADD COLUMN `worker_group_id` int(11) NULL DEFAULT -1 COMMENT 'worker group id' AFTER `process_instance_priority`;
  166. END IF;
  167. END;
  168. d//
  169. delimiter ;
  170. CALL ac_escheduler_T_t_escheduler_schedules_C_worker_group_id;
  171. DROP PROCEDURE ac_escheduler_T_t_escheduler_schedules_C_worker_group_id;
  172. -- ac_escheduler_T_t_escheduler_process_instance_C_worker_group_id
  173. drop PROCEDURE if EXISTS ac_escheduler_T_t_escheduler_process_instance_C_worker_group_id;
  174. delimiter d//
  175. CREATE PROCEDURE ac_escheduler_T_t_escheduler_process_instance_C_worker_group_id()
  176. BEGIN
  177. IF NOT EXISTS (SELECT 1 FROM information_schema.COLUMNS
  178. WHERE TABLE_NAME='t_escheduler_process_instance'
  179. AND TABLE_SCHEMA=(SELECT DATABASE())
  180. AND COLUMN_NAME='worker_group_id')
  181. THEN
  182. ALTER TABLE t_escheduler_process_instance ADD COLUMN `worker_group_id` int(11) NULL DEFAULT -1 COMMENT 'worker group id' AFTER `process_instance_priority`;
  183. END IF;
  184. END;
  185. d//
  186. delimiter ;
  187. CALL ac_escheduler_T_t_escheduler_process_instance_C_worker_group_id;
  188. DROP PROCEDURE ac_escheduler_T_t_escheduler_process_instance_C_worker_group_id;
  189. -- ac_escheduler_T_t_escheduler_process_instance_C_timeout
  190. drop PROCEDURE if EXISTS ac_escheduler_T_t_escheduler_process_instance_C_timeout;
  191. delimiter d//
  192. CREATE PROCEDURE ac_escheduler_T_t_escheduler_process_instance_C_timeout()
  193. BEGIN
  194. IF NOT EXISTS (SELECT 1 FROM information_schema.COLUMNS
  195. WHERE TABLE_NAME='t_escheduler_process_instance'
  196. AND TABLE_SCHEMA=(SELECT DATABASE())
  197. AND COLUMN_NAME='timeout')
  198. THEN
  199. ALTER TABLE `t_escheduler_process_instance` ADD COLUMN `timeout` int(11) NULL DEFAULT 0 COMMENT 'time out' AFTER `worker_group_id`;
  200. END IF;
  201. END;
  202. d//
  203. delimiter ;
  204. CALL ac_escheduler_T_t_escheduler_process_instance_C_timeout;
  205. DROP PROCEDURE ac_escheduler_T_t_escheduler_process_instance_C_timeout;
  206. -- ac_escheduler_T_t_escheduler_process_definition_C_timeout
  207. drop PROCEDURE if EXISTS ac_escheduler_T_t_escheduler_process_definition_C_timeout;
  208. delimiter d//
  209. CREATE PROCEDURE ac_escheduler_T_t_escheduler_process_definition_C_timeout()
  210. BEGIN
  211. IF NOT EXISTS (SELECT 1 FROM information_schema.COLUMNS
  212. WHERE TABLE_NAME='t_escheduler_process_definition'
  213. AND TABLE_SCHEMA=(SELECT DATABASE())
  214. AND COLUMN_NAME='timeout')
  215. THEN
  216. ALTER TABLE `t_escheduler_process_definition` ADD COLUMN `timeout` int(11) NULL DEFAULT 0 COMMENT 'time out' AFTER `create_time`;
  217. END IF;
  218. END;
  219. d//
  220. delimiter ;
  221. CALL ac_escheduler_T_t_escheduler_process_definition_C_timeout;
  222. DROP PROCEDURE ac_escheduler_T_t_escheduler_process_definition_C_timeout;