jnpf_nacos_oracle.sql 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521
  1. -- ----------------------------
  2. -- 表名:users
  3. -- ----------------------------
  4. CREATE TABLE users (
  5. "USERNAME" NVARCHAR2(50) NOT NULL PRIMARY KEY,
  6. "PASSWORD" NVARCHAR2(500) NOT NULL,
  7. "ENABLED" NVARCHAR2(15) NOT NULL
  8. );
  9. COMMENT ON TABLE users IS '';
  10. COMMENT ON COLUMN users."USERNAME" IS '';
  11. COMMENT ON COLUMN users."PASSWORD" IS '';
  12. COMMENT ON COLUMN users."ENABLED" IS '';
  13. DELETE FROM users;
  14. INSERT INTO users ("PASSWORD","ENABLED","USERNAME") VALUES ('$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu','true','nacos');
  15. -- ----------------------------
  16. -- 表名:tenant_info
  17. -- ----------------------------
  18. CREATE TABLE tenant_info (
  19. "ID" NUMBER PRIMARY KEY,
  20. "KP" NVARCHAR2(128) NOT NULL,
  21. "TENANT_ID" NVARCHAR2(128) DEFAULT '',
  22. "TENANT_NAME" NVARCHAR2(128) DEFAULT '',
  23. "TENANT_DESC" NVARCHAR2(256),
  24. "CREATE_SOURCE" NVARCHAR2(32),
  25. "GMT_CREATE" NUMBER NOT NULL,
  26. "GMT_MODIFIED" NUMBER NOT NULL
  27. );
  28. CREATE SEQUENCE tenant_info_sq
  29. INCREMENT by 1
  30. START WITH 1
  31. NOMAXVALUE
  32. NOCYCLE
  33. NOCACHE;
  34. CREATE OR REPLACE TRIGGER tenant_info_tg
  35. BEFORE INSERT ON tenant_info
  36. FOR EACH ROW
  37. BEGIN
  38. SELECT tenant_info_sq.NEXTVAL INTO :new.id FROM dual;
  39. END;
  40. /
  41. ;
  42. COMMENT ON TABLE tenant_info IS 'tenant_info';
  43. COMMENT ON COLUMN tenant_info."ID" IS 'id';
  44. COMMENT ON COLUMN tenant_info."KP" IS 'kp';
  45. COMMENT ON COLUMN tenant_info."TENANT_ID" IS 'tenant_id';
  46. COMMENT ON COLUMN tenant_info."TENANT_NAME" IS 'tenant_name';
  47. COMMENT ON COLUMN tenant_info."TENANT_DESC" IS 'tenant_desc';
  48. COMMENT ON COLUMN tenant_info."CREATE_SOURCE" IS 'create_source';
  49. COMMENT ON COLUMN tenant_info."GMT_CREATE" IS '创建时间';
  50. COMMENT ON COLUMN tenant_info."GMT_MODIFIED" IS '修改时间';
  51. -- ----------------------------
  52. -- Records of TENANT_INFO
  53. -- ----------------------------
  54. INSERT INTO "TENANT_INFO" VALUES ('1', '1', '69c4eecb-05bd-4041-81fe-1473f95f578c', 'develop', '开发环境', 'nacos', '1683364156784', '1683364156784');
  55. INSERT INTO "TENANT_INFO" VALUES ('2', '1', '1e017954-eb52-4d21-a843-0286d9013cf3', 'staging', '测试环境', 'nacos', '1683364163967', '1683364163967');
  56. INSERT INTO "TENANT_INFO" VALUES ('3', '1', 'f50f4948-3ca2-48af-8bb1-1a47950b503d', 'pre', '预发环境', 'nacos', '1683364172231', '1683364172231');
  57. INSERT INTO "TENANT_INFO" VALUES ('5', '1', '3baec428-9669-486c-b359-a76f7a1f1ac7', 'production', '生产环境', 'nacos', '1683364190662', '1683364190662');
  58. -- ----------------------------
  59. -- 表名:tenant_capacity
  60. -- ----------------------------
  61. CREATE TABLE tenant_capacity (
  62. "ID" NUMBER PRIMARY KEY,
  63. "TENANT_ID" NVARCHAR2(128) DEFAULT '',
  64. "QUOTA" NUMBER DEFAULT '0',
  65. "USAGE" NUMBER DEFAULT '0',
  66. "MAX_SIZE" NUMBER DEFAULT '0',
  67. "MAX_AGGR_COUNT" NUMBER DEFAULT '0',
  68. "MAX_AGGR_SIZE" NUMBER DEFAULT '0',
  69. "MAX_HISTORY_COUNT" NUMBER DEFAULT '0',
  70. "GMT_CREATE" TIMESTAMP DEFAULT to_date('2010-05-05 00:00:00', 'yyyy-mm-dd hh24:mi:ss'),
  71. "GMT_MODIFIED" TIMESTAMP DEFAULT to_date('2010-05-05 00:00:00', 'yyyy-mm-dd hh24:mi:ss')
  72. );
  73. CREATE SEQUENCE tenant_capacity_sq
  74. INCREMENT by 1
  75. START WITH 1
  76. NOMAXVALUE
  77. NOCYCLE
  78. NOCACHE;
  79. CREATE OR REPLACE TRIGGER tenant_capacity_tg
  80. BEFORE INSERT ON tenant_capacity
  81. FOR EACH ROW
  82. BEGIN
  83. SELECT tenant_capacity_sq.NEXTVAL INTO :new.id FROM dual;
  84. END;
  85. /
  86. ;
  87. COMMENT ON TABLE tenant_capacity IS '租户容量信息表';
  88. COMMENT ON COLUMN tenant_capacity."ID" IS '主键ID';
  89. COMMENT ON COLUMN tenant_capacity."TENANT_ID" IS 'Tenant ID';
  90. COMMENT ON COLUMN tenant_capacity."QUOTA" IS '配额,0表示使用默认值';
  91. COMMENT ON COLUMN tenant_capacity."USAGE" IS '使用量';
  92. COMMENT ON COLUMN tenant_capacity."MAX_SIZE" IS '单个配置大小上限,单位为字节,0表示使用默认值';
  93. COMMENT ON COLUMN tenant_capacity."MAX_AGGR_COUNT" IS '聚合子配置最大个数';
  94. COMMENT ON COLUMN tenant_capacity."MAX_AGGR_SIZE" IS '单个聚合数据的子配置大小上限,单位为字节,0表示使用默认值';
  95. COMMENT ON COLUMN tenant_capacity."MAX_HISTORY_COUNT" IS '最大变更历史数量';
  96. COMMENT ON COLUMN tenant_capacity."GMT_CREATE" IS '创建时间';
  97. COMMENT ON COLUMN tenant_capacity."GMT_MODIFIED" IS '修改时间';
  98. -- ----------------------------
  99. -- 表名:roles
  100. -- ----------------------------
  101. CREATE TABLE roles (
  102. "USERNAME" NVARCHAR2(50) NOT NULL,
  103. "ROLE" NVARCHAR2(50) NOT NULL
  104. );
  105. COMMENT ON TABLE roles IS '';
  106. COMMENT ON COLUMN roles."USERNAME" IS '';
  107. COMMENT ON COLUMN roles."ROLE" IS '';
  108. DELETE FROM roles;
  109. INSERT INTO roles ("ROLE","USERNAME") VALUES ('ROLE_ADMIN','nacos');
  110. -- ----------------------------
  111. -- 表名:permissions
  112. -- ----------------------------
  113. CREATE TABLE permissions (
  114. "ROLE" NVARCHAR2(50) NOT NULL,
  115. "RESOURCE" NVARCHAR2(512) NOT NULL,
  116. "ACTION" NVARCHAR2(8) NOT NULL
  117. );
  118. COMMENT ON TABLE permissions IS '';
  119. COMMENT ON COLUMN permissions."ROLE" IS '';
  120. COMMENT ON COLUMN permissions."RESOURCE" IS '';
  121. COMMENT ON COLUMN permissions."ACTION" IS '';
  122. -- ----------------------------
  123. -- 表名:his_config_info
  124. -- ----------------------------
  125. CREATE TABLE his_config_info (
  126. "ID" NUMBER NOT NULL,
  127. "NID" NUMBER PRIMARY KEY,
  128. "DATA_ID" NVARCHAR2(255) NOT NULL,
  129. "GROUP_ID" NVARCHAR2(128) NOT NULL,
  130. "APP_NAME" NVARCHAR2(128),
  131. "CONTENT" NCLOB NOT NULL,
  132. "MD5" NVARCHAR2(32),
  133. "GMT_CREATE" TIMESTAMP DEFAULT to_date('2010-05-05 00:00:00', 'yyyy-mm-dd hh24:mi:ss'),
  134. "GMT_MODIFIED" TIMESTAMP DEFAULT to_date('2010-05-05 00:00:00', 'yyyy-mm-dd hh24:mi:ss'),
  135. "SRC_USER" NCLOB,
  136. "SRC_IP" NVARCHAR2(20),
  137. "OP_TYPE" CHAR(10),
  138. "TENANT_ID" NVARCHAR2(128) DEFAULT '',
  139. "ENCRYPTED_DATA_KEY" NCLOB
  140. );
  141. CREATE SEQUENCE his_config_info_sq
  142. INCREMENT by 1
  143. START WITH 1
  144. NOMAXVALUE
  145. NOCYCLE
  146. NOCACHE;
  147. CREATE OR REPLACE TRIGGER his_config_info_tg
  148. BEFORE INSERT ON his_config_info
  149. FOR EACH ROW
  150. BEGIN
  151. SELECT his_config_info_sq.NEXTVAL INTO :new.nid FROM dual;
  152. END;
  153. /
  154. ;
  155. COMMENT ON TABLE his_config_info IS '多租户改造';
  156. COMMENT ON COLUMN his_config_info."ID" IS '';
  157. COMMENT ON COLUMN his_config_info."NID" IS '';
  158. COMMENT ON COLUMN his_config_info."DATA_ID" IS '';
  159. COMMENT ON COLUMN his_config_info."GROUP_ID" IS '';
  160. COMMENT ON COLUMN his_config_info."APP_NAME" IS 'app_name';
  161. COMMENT ON COLUMN his_config_info."CONTENT" IS '';
  162. COMMENT ON COLUMN his_config_info."MD5" IS '';
  163. COMMENT ON COLUMN his_config_info."GMT_CREATE" IS '';
  164. COMMENT ON COLUMN his_config_info."GMT_MODIFIED" IS '';
  165. COMMENT ON COLUMN his_config_info."SRC_USER" IS '';
  166. COMMENT ON COLUMN his_config_info."SRC_IP" IS '';
  167. COMMENT ON COLUMN his_config_info."OP_TYPE" IS '';
  168. COMMENT ON COLUMN his_config_info."TENANT_ID" IS '租户字段';
  169. COMMENT ON COLUMN his_config_info."ENCRYPTED_DATA_KEY" IS '秘钥';
  170. -- ----------------------------
  171. -- 表名:group_capacity
  172. -- ----------------------------
  173. CREATE TABLE group_capacity (
  174. "ID" NUMBER PRIMARY KEY,
  175. "GROUP_ID" NVARCHAR2(128) DEFAULT '',
  176. "QUOTA" NUMBER DEFAULT '0',
  177. "USAGE" NUMBER DEFAULT '0',
  178. "MAX_SIZE" NUMBER DEFAULT '0',
  179. "MAX_AGGR_COUNT" NUMBER DEFAULT '0',
  180. "MAX_AGGR_SIZE" NUMBER DEFAULT '0',
  181. "MAX_HISTORY_COUNT" NUMBER DEFAULT '0',
  182. "GMT_CREATE" TIMESTAMP DEFAULT to_date('2010-05-05 00:00:00', 'yyyy-mm-dd hh24:mi:ss'),
  183. "GMT_MODIFIED" TIMESTAMP DEFAULT to_date('2010-05-05 00:00:00', 'yyyy-mm-dd hh24:mi:ss')
  184. );
  185. CREATE SEQUENCE group_capacity_sq
  186. INCREMENT by 1
  187. START WITH 1
  188. NOMAXVALUE
  189. NOCYCLE
  190. NOCACHE;
  191. CREATE OR REPLACE TRIGGER group_capacity_tg
  192. BEFORE INSERT ON group_capacity
  193. FOR EACH ROW
  194. BEGIN
  195. SELECT group_capacity_sq.NEXTVAL INTO :new.id FROM dual;
  196. END;
  197. /
  198. ;
  199. COMMENT ON TABLE group_capacity IS '集群、各Group容量信息表';
  200. COMMENT ON COLUMN group_capacity."ID" IS '主键ID';
  201. COMMENT ON COLUMN group_capacity."GROUP_ID" IS 'Group ID,空字符表示整个集群';
  202. COMMENT ON COLUMN group_capacity."QUOTA" IS '配额,0表示使用默认值';
  203. COMMENT ON COLUMN group_capacity."USAGE" IS '使用量';
  204. COMMENT ON COLUMN group_capacity."MAX_SIZE" IS '单个配置大小上限,单位为字节,0表示使用默认值';
  205. COMMENT ON COLUMN group_capacity."MAX_AGGR_COUNT" IS '聚合子配置最大个数,,0表示使用默认值';
  206. COMMENT ON COLUMN group_capacity."MAX_AGGR_SIZE" IS '单个聚合数据的子配置大小上限,单位为字节,0表示使用默认值';
  207. COMMENT ON COLUMN group_capacity."MAX_HISTORY_COUNT" IS '最大变更历史数量';
  208. COMMENT ON COLUMN group_capacity."GMT_CREATE" IS '创建时间';
  209. COMMENT ON COLUMN group_capacity."GMT_MODIFIED" IS '修改时间';
  210. -- ----------------------------
  211. -- 表名:config_tags_relation
  212. -- ----------------------------
  213. CREATE TABLE config_tags_relation (
  214. "ID" NUMBER NOT NULL,
  215. "TAG_NAME" NVARCHAR2(128) NOT NULL,
  216. "TAG_TYPE" NVARCHAR2(64),
  217. "DATA_ID" NVARCHAR2(255) NOT NULL,
  218. "GROUP_ID" NVARCHAR2(128) NOT NULL,
  219. "TENANT_ID" NVARCHAR2(128) DEFAULT '',
  220. "NID" NUMBER PRIMARY KEY
  221. );
  222. CREATE SEQUENCE config_tags_relation_sq
  223. INCREMENT by 1
  224. START WITH 1
  225. NOMAXVALUE
  226. NOCYCLE
  227. NOCACHE;
  228. CREATE OR REPLACE TRIGGER config_tags_relation_tg
  229. BEFORE INSERT ON config_tags_relation
  230. FOR EACH ROW
  231. BEGIN
  232. SELECT config_tags_relation_sq.NEXTVAL INTO :new.nid FROM dual;
  233. END;
  234. /
  235. ;
  236. COMMENT ON TABLE config_tags_relation IS 'config_tag_relation';
  237. COMMENT ON COLUMN config_tags_relation."ID" IS 'id';
  238. COMMENT ON COLUMN config_tags_relation."TAG_NAME" IS 'tag_name';
  239. COMMENT ON COLUMN config_tags_relation."TAG_TYPE" IS 'tag_type';
  240. COMMENT ON COLUMN config_tags_relation."DATA_ID" IS 'data_id';
  241. COMMENT ON COLUMN config_tags_relation."GROUP_ID" IS 'group_id';
  242. COMMENT ON COLUMN config_tags_relation."TENANT_ID" IS 'tenant_id';
  243. COMMENT ON COLUMN config_tags_relation."NID" IS '';
  244. -- ----------------------------
  245. -- 表名:config_info_tag
  246. -- ----------------------------
  247. CREATE TABLE config_info_tag (
  248. "ID" NUMBER PRIMARY KEY,
  249. "DATA_ID" NVARCHAR2(255) NOT NULL,
  250. "GROUP_ID" NVARCHAR2(128) NOT NULL,
  251. "TENANT_ID" NVARCHAR2(128) DEFAULT '',
  252. "TAG_ID" NVARCHAR2(128) NOT NULL,
  253. "APP_NAME" NVARCHAR2(128),
  254. "CONTENT" NCLOB NOT NULL,
  255. "MD5" NVARCHAR2(32),
  256. "GMT_CREATE" TIMESTAMP DEFAULT to_date('2010-05-05 00:00:00', 'yyyy-mm-dd hh24:mi:ss'),
  257. "GMT_MODIFIED" TIMESTAMP DEFAULT to_date('2010-05-05 00:00:00', 'yyyy-mm-dd hh24:mi:ss'),
  258. "SRC_USER" NCLOB,
  259. "SRC_IP" NVARCHAR2(20)
  260. );
  261. CREATE SEQUENCE config_info_tag_sq
  262. INCREMENT by 1
  263. START WITH 1
  264. NOMAXVALUE
  265. NOCYCLE
  266. NOCACHE;
  267. CREATE OR REPLACE TRIGGER config_info_tag_tg
  268. BEFORE INSERT ON config_info_tag
  269. FOR EACH ROW
  270. BEGIN
  271. SELECT config_info_tag_sq.NEXTVAL INTO :new.id FROM dual;
  272. END;
  273. /
  274. ;
  275. COMMENT ON TABLE config_info_tag IS 'config_info_tag';
  276. COMMENT ON COLUMN config_info_tag."ID" IS 'id';
  277. COMMENT ON COLUMN config_info_tag."DATA_ID" IS 'data_id';
  278. COMMENT ON COLUMN config_info_tag."GROUP_ID" IS 'group_id';
  279. COMMENT ON COLUMN config_info_tag."TENANT_ID" IS 'tenant_id';
  280. COMMENT ON COLUMN config_info_tag."TAG_ID" IS 'tag_id';
  281. COMMENT ON COLUMN config_info_tag."APP_NAME" IS 'app_name';
  282. COMMENT ON COLUMN config_info_tag."CONTENT" IS 'content';
  283. COMMENT ON COLUMN config_info_tag."MD5" IS 'md5';
  284. COMMENT ON COLUMN config_info_tag."GMT_CREATE" IS '创建时间';
  285. COMMENT ON COLUMN config_info_tag."GMT_MODIFIED" IS '修改时间';
  286. COMMENT ON COLUMN config_info_tag."SRC_USER" IS 'source user';
  287. COMMENT ON COLUMN config_info_tag."SRC_IP" IS 'source ip';
  288. -- ----------------------------
  289. -- 表名:config_info_beta
  290. -- ----------------------------
  291. CREATE TABLE config_info_beta (
  292. "ID" NUMBER PRIMARY KEY,
  293. "DATA_ID" NVARCHAR2(255) NOT NULL,
  294. "GROUP_ID" NVARCHAR2(128) NOT NULL,
  295. "APP_NAME" NVARCHAR2(128),
  296. "CONTENT" NCLOB NOT NULL,
  297. "BETA_IPS" NVARCHAR2(1024),
  298. "MD5" NVARCHAR2(32),
  299. "GMT_CREATE" TIMESTAMP DEFAULT to_date('2010-05-05 00:00:00', 'yyyy-mm-dd hh24:mi:ss'),
  300. "GMT_MODIFIED" TIMESTAMP DEFAULT to_date('2010-05-05 00:00:00', 'yyyy-mm-dd hh24:mi:ss'),
  301. "SRC_USER" NCLOB,
  302. "SRC_IP" NVARCHAR2(20),
  303. "TENANT_ID" NVARCHAR2(128) DEFAULT '',
  304. "ENCRYPTED_DATA_KEY" NCLOB
  305. );
  306. CREATE SEQUENCE config_info_beta_sq
  307. INCREMENT by 1
  308. START WITH 1
  309. NOMAXVALUE
  310. NOCYCLE
  311. NOCACHE;
  312. CREATE OR REPLACE TRIGGER config_info_beta_tg
  313. BEFORE INSERT ON config_info_beta
  314. FOR EACH ROW
  315. BEGIN
  316. SELECT config_info_beta_sq.NEXTVAL INTO :new.id FROM dual;
  317. END;
  318. /
  319. ;
  320. COMMENT ON TABLE config_info_beta IS 'config_info_beta';
  321. COMMENT ON COLUMN config_info_beta."ID" IS 'id';
  322. COMMENT ON COLUMN config_info_beta."DATA_ID" IS 'data_id';
  323. COMMENT ON COLUMN config_info_beta."GROUP_ID" IS 'group_id';
  324. COMMENT ON COLUMN config_info_beta."APP_NAME" IS 'app_name';
  325. COMMENT ON COLUMN config_info_beta."CONTENT" IS 'content';
  326. COMMENT ON COLUMN config_info_beta."BETA_IPS" IS 'betaIps';
  327. COMMENT ON COLUMN config_info_beta."MD5" IS 'md5';
  328. COMMENT ON COLUMN config_info_beta."GMT_CREATE" IS '创建时间';
  329. COMMENT ON COLUMN config_info_beta."GMT_MODIFIED" IS '修改时间';
  330. COMMENT ON COLUMN config_info_beta."SRC_USER" IS 'source user';
  331. COMMENT ON COLUMN config_info_beta."SRC_IP" IS 'source ip';
  332. COMMENT ON COLUMN config_info_beta."TENANT_ID" IS '租户字段';
  333. COMMENT ON COLUMN config_info_beta."ENCRYPTED_DATA_KEY" IS '秘钥';
  334. -- ----------------------------
  335. -- 表名:config_info_aggr
  336. -- ----------------------------
  337. CREATE TABLE config_info_aggr (
  338. "ID" NUMBER PRIMARY KEY,
  339. "DATA_ID" NVARCHAR2(255) NOT NULL,
  340. "GROUP_ID" NVARCHAR2(128) NOT NULL,
  341. "DATUM_ID" NVARCHAR2(255) NOT NULL,
  342. "CONTENT" NCLOB NOT NULL,
  343. "GMT_MODIFIED" TIMESTAMP NOT NULL,
  344. "APP_NAME" NVARCHAR2(128),
  345. "TENANT_ID" NVARCHAR2(128) DEFAULT ''
  346. );
  347. CREATE SEQUENCE config_info_aggr_sq
  348. INCREMENT by 1
  349. START WITH 1
  350. NOMAXVALUE
  351. NOCYCLE
  352. NOCACHE;
  353. CREATE OR REPLACE TRIGGER config_info_aggr_tg
  354. BEFORE INSERT ON config_info_aggr
  355. FOR EACH ROW
  356. BEGIN
  357. SELECT config_info_aggr_sq.NEXTVAL INTO :new.id FROM dual;
  358. END;
  359. /
  360. ;
  361. COMMENT ON TABLE config_info_aggr IS '增加租户字段';
  362. COMMENT ON COLUMN config_info_aggr."ID" IS 'id';
  363. COMMENT ON COLUMN config_info_aggr."DATA_ID" IS 'data_id';
  364. COMMENT ON COLUMN config_info_aggr."GROUP_ID" IS 'group_id';
  365. COMMENT ON COLUMN config_info_aggr."DATUM_ID" IS 'datum_id';
  366. COMMENT ON COLUMN config_info_aggr."CONTENT" IS '内容';
  367. COMMENT ON COLUMN config_info_aggr."GMT_MODIFIED" IS '修改时间';
  368. COMMENT ON COLUMN config_info_aggr."APP_NAME" IS '';
  369. COMMENT ON COLUMN config_info_aggr."TENANT_ID" IS '租户字段';
  370. -- ----------------------------
  371. -- 表名:config_info
  372. -- ----------------------------
  373. CREATE TABLE config_info (
  374. "ID" NUMBER PRIMARY KEY,
  375. "DATA_ID" NVARCHAR2(255) NOT NULL,
  376. "GROUP_ID" NVARCHAR2(128),
  377. "CONTENT" NCLOB NOT NULL,
  378. "MD5" NVARCHAR2(32),
  379. "GMT_CREATE" TIMESTAMP DEFAULT to_date('2010-05-05 00:00:00', 'yyyy-mm-dd hh24:mi:ss'),
  380. "GMT_MODIFIED" TIMESTAMP DEFAULT to_date('2010-05-05 00:00:00', 'yyyy-mm-dd hh24:mi:ss'),
  381. "SRC_USER" NCLOB,
  382. "SRC_IP" NVARCHAR2(20),
  383. "APP_NAME" NVARCHAR2(128),
  384. "TENANT_ID" NVARCHAR2(128) DEFAULT '',
  385. "C_DESC" NVARCHAR2(256),
  386. "C_USE" NVARCHAR2(64),
  387. "EFFECT" NVARCHAR2(64),
  388. "TYPE" NVARCHAR2(64),
  389. "C_SCHEMA" NCLOB,
  390. "ENCRYPTED_DATA_KEY" NCLOB
  391. );
  392. CREATE SEQUENCE config_info_sq
  393. INCREMENT by 1
  394. START WITH 1
  395. NOMAXVALUE
  396. NOCYCLE
  397. NOCACHE;
  398. CREATE OR REPLACE TRIGGER config_info_tg
  399. BEFORE INSERT ON config_info
  400. FOR EACH ROW
  401. BEGIN
  402. SELECT config_info_sq.NEXTVAL INTO :new.id FROM dual;
  403. END;
  404. /
  405. ;
  406. COMMENT ON TABLE config_info IS 'config_info';
  407. COMMENT ON COLUMN config_info."ID" IS 'id';
  408. COMMENT ON COLUMN config_info."DATA_ID" IS 'data_id';
  409. COMMENT ON COLUMN config_info."GROUP_ID" IS '';
  410. COMMENT ON COLUMN config_info."CONTENT" IS 'content';
  411. COMMENT ON COLUMN config_info."MD5" IS 'md5';
  412. COMMENT ON COLUMN config_info."GMT_CREATE" IS '创建时间';
  413. COMMENT ON COLUMN config_info."GMT_MODIFIED" IS '修改时间';
  414. COMMENT ON COLUMN config_info."SRC_USER" IS 'source user';
  415. COMMENT ON COLUMN config_info."SRC_IP" IS 'source ip';
  416. COMMENT ON COLUMN config_info."APP_NAME" IS '';
  417. COMMENT ON COLUMN config_info."TENANT_ID" IS '租户字段';
  418. COMMENT ON COLUMN config_info."C_DESC" IS '';
  419. COMMENT ON COLUMN config_info."C_USE" IS '';
  420. COMMENT ON COLUMN config_info."EFFECT" IS '';
  421. COMMENT ON COLUMN config_info."TYPE" IS '';
  422. COMMENT ON COLUMN config_info."C_SCHEMA" IS '';
  423. COMMENT ON COLUMN config_info."ENCRYPTED_DATA_KEY" IS '秘钥';
  424. -- ----------------------------
  425. -- Records of CONFIG_INFO
  426. -- ----------------------------
  427. -- 唯一索引
  428. CREATE UNIQUE INDEX uk_configinfo_datagrouptenant ON config_info(data_id,group_id,tenant_id);
  429. CREATE UNIQUE INDEX uk_configinfoaggr_datagroup ON config_info_aggr(data_id,group_id,tenant_id,datum_id);
  430. CREATE UNIQUE INDEX uk_configinfobeta_datagroup ON config_info_beta(data_id,group_id,tenant_id);
  431. CREATE UNIQUE INDEX uk_configinfotag_datagroup ON config_info_tag(data_id,group_id,tenant_id,tag_id);
  432. CREATE UNIQUE INDEX uk_configtagrelation ON config_tags_relation(id,tag_name,tag_type);
  433. CREATE UNIQUE INDEX uk_group_id ON group_capacity(group_id);
  434. CREATE UNIQUE INDEX uk_role_permission ON permissions(role,"RESOURCE",action);
  435. CREATE UNIQUE INDEX uk_username_role ON roles(username,role);
  436. CREATE UNIQUE INDEX uk_tenant_id ON tenant_capacity(tenant_id);
  437. CREATE UNIQUE INDEX uk_tenant_info_kptenantid ON tenant_info(kp,tenant_id);
  438. CREATE TABLE "GLOBAL_TABLE"
  439. (
  440. "XID" VARCHAR2(128) NOT NULL,
  441. "TRANSACTION_ID" NUMBER(19),
  442. "STATUS" NUMBER(3) NOT NULL,
  443. "APPLICATION_ID" VARCHAR2(32),
  444. "TRANSACTION_SERVICE_GROUP" VARCHAR2(32),
  445. "TRANSACTION_NAME" VARCHAR2(128),
  446. "TIMEOUT" NUMBER(10),
  447. "BEGIN_TIME" NUMBER(19),
  448. "APPLICATION_DATA" VARCHAR2(2000),
  449. "GMT_CREATE" TIMESTAMP(0),
  450. "GMT_MODIFIED" TIMESTAMP(0),
  451. PRIMARY KEY ("XID")
  452. );
  453. CREATE INDEX idx_status_gmt_modified ON "GLOBAL_TABLE" ("STATUS", "GMT_MODIFIED");
  454. CREATE INDEX idx_transaction_id ON "GLOBAL_TABLE" ("TRANSACTION_ID");
  455. -- the table to store BranchSession data
  456. CREATE TABLE "BRANCH_TABLE"
  457. (
  458. "BRANCH_ID" NUMBER(19) NOT NULL,
  459. "XID" VARCHAR2(128) NOT NULL,
  460. "TRANSACTION_ID" NUMBER(19),
  461. "RESOURCE_GROUP_ID" VARCHAR2(32),
  462. "RESOURCE_ID" VARCHAR2(256),
  463. "BRANCH_TYPE" VARCHAR2(8),
  464. "STATUS" NUMBER(3),
  465. "CLIENT_ID" VARCHAR2(64),
  466. "APPLICATION_DATA" VARCHAR2(2000),
  467. "GMT_CREATE" TIMESTAMP(6),
  468. "GMT_MODIFIED" TIMESTAMP(6),
  469. PRIMARY KEY ("BRANCH_ID")
  470. );
  471. CREATE INDEX idx_xid ON "BRANCH_TABLE" ("XID");
  472. -- the table to store lock data
  473. CREATE TABLE "LOCK_TABLE"
  474. (
  475. "ROW_KEY" VARCHAR2(128) NOT NULL,
  476. "XID" VARCHAR2(128),
  477. "TRANSACTION_ID" NUMBER(19),
  478. "BRANCH_ID" NUMBER(19) NOT NULL,
  479. "RESOURCE_ID" VARCHAR2(256),
  480. "TABLE_NAME" VARCHAR2(32),
  481. "PK" VARCHAR2(128),
  482. "STATUS" NUMBER(3) DEFAULT 0 NOT NULL,
  483. "GMT_CREATE" TIMESTAMP(0),
  484. "GMT_MODIFIED" TIMESTAMP(0),
  485. PRIMARY KEY ("ROW_KEY")
  486. );
  487. comment on column "LOCK_TABLE"."STATUS" is '0:locked ,1:rollbacking';
  488. CREATE INDEX idx_branch_id ON "LOCK_TABLE" ("BRANCH_ID");
  489. CREATE INDEX idx_lock_table_xid ON "LOCK_TABLE" (XID);
  490. CREATE INDEX idx_status ON "LOCK_TABLE" (STATUS);
  491. CREATE TABLE "DISTRIBUTED_LOCK" (
  492. "LOCK_KEY" VARCHAR2(20) NOT NULL,
  493. "LOCK_VALUE" VARCHAR2(20) NOT NULL,
  494. "EXPIRE" DECIMAL(18) NOT NULL,
  495. PRIMARY KEY ("LOCK_KEY")
  496. );
  497. INSERT INTO distributed_lock (lock_key, lock_value, expire) VALUES ('AsyncCommitting', ' ', 0);
  498. INSERT INTO distributed_lock (lock_key, lock_value, expire) VALUES ('RetryCommitting', ' ', 0);
  499. INSERT INTO distributed_lock (lock_key, lock_value, expire) VALUES ('RetryRollbacking', ' ', 0);
  500. INSERT INTO distributed_lock (lock_key, lock_value, expire) VALUES ('TxTimeoutCheck', ' ', 0);
  501. CREATE TABLE "VGROUP_TABLE"
  502. (
  503. "VGROUP" VARCHAR2(255) PRIMARY KEY,
  504. "NAMESPACE" VARCHAR2(255),
  505. "CLUSTER" VARCHAR2(255)
  506. );