|
| 1 | +# |
| 2 | +# XXL-MQ |
| 3 | +# Copyright (c) 2015-present, xuxueli. |
| 4 | + |
| 5 | +CREATE database if NOT EXISTS `xxl_mq` default character set utf8mb4 collate utf8mb4_unicode_ci; |
| 6 | +use `xxl_mq`; |
| 7 | + |
| 8 | +SET NAMES utf8mb4; |
| 9 | + |
| 10 | + |
| 11 | +## —————————————————————— config data —————————————————— |
| 12 | + |
| 13 | +CREATE TABLE `xxl_mq_topic`( |
| 14 | + `id` int(11) NOT NULL AUTO_INCREMENT, |
| 15 | + `topic` varchar(255) NOT NULL COMMENT '消息主题Topic', |
| 16 | + `desc` varchar(100) NOT NULL COMMENT '消息主题名称', |
| 17 | + `store_type` tinyint(4) NOT NULL COMMENT '存储类型:0-通用存储,2-单独存储', |
| 18 | + `level` int(11) NOT NULL COMMENT '优先级', |
| 19 | + `owner` varchar(50) NOT NULL COMMENT '负责人', |
| 20 | + `alarm_email` varchar(255) DEFAULT NULL COMMENT '告警配置(邮箱)', |
| 21 | + `add_time` datetime NOT NULL COMMENT '新增时间', |
| 22 | + `update_time` datetime NOT NULL COMMENT '更新时间', |
| 23 | + PRIMARY KEY (`id`), |
| 24 | + UNIQUE KEY `uni_topic` (`topic`) USING BTREE |
| 25 | +) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COMMENT ='消息主题'; |
| 26 | + |
| 27 | +CREATE TABLE `xxl_mq_message`( |
| 28 | + `id` bigint(20) NOT NULL AUTO_INCREMENT, |
| 29 | + `data` text NOT NULL COMMENT '消息数据', |
| 30 | + `topic` varchar(255) NOT NULL COMMENT '消息主题Topic', |
| 31 | + `group` varchar(255) NOT NULL COMMENT '消息分组', |
| 32 | + `sharding_id` int(11) NOT NULL COMMENT '消息分片序号', |
| 33 | + `status` tinyint(4) NOT NULL COMMENT '状态:0-正常、1-运行中、2-成功、3-失败', |
| 34 | + `retry_count` int(11) NOT NULL COMMENT '重试次数', |
| 35 | + `retry_type` varchar(100) NOT NULL COMMENT '重试策略(固定;增长;指数)', |
| 36 | + `retry_interval` int(11) NOT NULL COMMENT '重试间隔(3s;2/4/6;2/4/8)', |
| 37 | + `effect_time` datetime NOT NULL COMMENT '生效时间', |
| 38 | + `consume_log` text DEFAULT NULL COMMENT '消费地址', |
| 39 | + `add_time` datetime NOT NULL COMMENT '新增时间', |
| 40 | + `update_time` datetime NOT NULL COMMENT '更新时间', |
| 41 | + PRIMARY KEY (`id`), |
| 42 | + KEY `i_t_g_1` (`topic`, `group`, `sharding_id`) |
| 43 | +) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COMMENT ='消息数据表'; |
| 44 | + |
| 45 | +CREATE TABLE `xxl_mq_message_archive` ( |
| 46 | + `id` bigint(20) NOT NULL AUTO_INCREMENT, |
| 47 | + `data` text NOT NULL COMMENT '消息数据', |
| 48 | + `topic` varchar(255) NOT NULL COMMENT '消息主题Topic', |
| 49 | + `group` varchar(255) NOT NULL COMMENT '消息分组', |
| 50 | + `sharding_id` int(11) NOT NULL COMMENT '消息分片序号', |
| 51 | + `status` tinyint(4) NOT NULL COMMENT '状态:0-正常、1-运行中、2-成功、3-失败', |
| 52 | + `retry_count` int(11) NOT NULL COMMENT '重试次数', |
| 53 | + `retry_type` varchar(100) NOT NULL COMMENT '重试策略(固定;增长;指数)', |
| 54 | + `retry_interval` int(11) NOT NULL COMMENT '重试间隔(3s;2/4/6;2/4/8)', |
| 55 | + `effect_time` datetime NOT NULL COMMENT '生效时间', |
| 56 | + `consume_log` text DEFAULT NULL COMMENT '消费日志', |
| 57 | + `add_time` datetime NOT NULL COMMENT '新增时间', |
| 58 | + `update_time` datetime NOT NULL COMMENT '更新时间', |
| 59 | + PRIMARY KEY (`id`), |
| 60 | + KEY `i_t_g_1` (`topic`, `group`, `sharding_id`) |
| 61 | +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='消息数据归档表'; |
| 62 | + |
| 63 | +## —————————————————————— registry of application —————————————————— |
| 64 | + |
| 65 | +CREATE TABLE `xxl_mq_registry` ( |
| 66 | + `id` bigint(20) NOT NULL AUTO_INCREMENT, |
| 67 | + `type` tinyint(4) NOT NULL COMMENT '注册类型:1-Broker,2-Consumer', |
| 68 | + `key` varchar(255) NOT NULL COMMENT '注册Key(broker,consumer—uuid)', |
| 69 | + `data` text NOT NULL COMMENT '数据正文,json结构体(address01,topic01&group)', |
| 70 | + `add_time` datetime NOT NULL COMMENT '新增时间', |
| 71 | + `update_time` datetime NOT NULL COMMENT '更新时间', |
| 72 | + PRIMARY KEY (`id`) |
| 73 | +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='注册表'; |
| 74 | + |
| 75 | + |
| 76 | + |
| 77 | + |
| 78 | + |
| 79 | +## —————————————————————— user and token and application —————————————————— |
| 80 | + |
| 81 | +CREATE TABLE `xxl_mq_application` ( |
| 82 | + `id` int(11) NOT NULL AUTO_INCREMENT, |
| 83 | + `appname` varchar(50) NOT NULL COMMENT 'AppName(应用唯一标识)', |
| 84 | + `name` varchar(20) NOT NULL COMMENT '应用名称', |
| 85 | + `desc` varchar(100) NOT NULL COMMENT '应用描述', |
| 86 | + `add_time` datetime NOT NULL COMMENT '新增时间', |
| 87 | + `update_time` datetime NOT NULL COMMENT '更新时间', |
| 88 | + PRIMARY KEY (`id`), |
| 89 | + UNIQUE KEY `i_appname` (`appname`) USING BTREE |
| 90 | +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='应用'; |
| 91 | + |
| 92 | +CREATE TABLE `xxl_mq_user` ( |
| 93 | + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户ID', |
| 94 | + `username` varchar(50) NOT NULL COMMENT '账号', |
| 95 | + `password` varchar(50) NOT NULL COMMENT '密码', |
| 96 | + `user_token` varchar(50) DEFAULT NULL COMMENT '登录token', |
| 97 | + `status` tinyint(4) NOT NULL COMMENT '状态:0-正常、1-禁用', |
| 98 | + `real_name` varchar(50) DEFAULT NULL COMMENT '真实姓名', |
| 99 | + `role` varchar(20) NOT NULL COMMENT '角色:ADMIN-管理员,NORMAL-普通用户', |
| 100 | + `permission` varchar(255) DEFAULT NULL COMMENT '权限:应用ID列表,多个逗号分割', |
| 101 | + `add_time` datetime NOT NULL COMMENT '新增时间', |
| 102 | + `update_time` datetime NOT NULL COMMENT '更新时间', |
| 103 | + PRIMARY KEY (`id`), |
| 104 | + UNIQUE KEY `i_username` (`username`) USING BTREE |
| 105 | +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户表'; |
| 106 | + |
| 107 | +CREATE TABLE `xxl_mq_access_token` ( |
| 108 | + `id` bigint(20) NOT NULL AUTO_INCREMENT, |
| 109 | + `access_token` varchar(50) NOT NULL COMMENT '注册发现AccessToken', |
| 110 | + `status` tinyint(4) NOT NULL COMMENT '状态:0-正常、1-禁用', |
| 111 | + `add_time` datetime NOT NULL COMMENT '新增时间', |
| 112 | + `update_time` datetime NOT NULL COMMENT '更新时间', |
| 113 | + PRIMARY KEY (`id`) |
| 114 | +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='注册发现AccessToken'; |
| 115 | + |
| 116 | +## —————————————————————— init data —————————————————— |
| 117 | + |
| 118 | +INSERT INTO `xxl_mq_user`(`id`, `username`, `password`, `user_token`, `status`, `real_name`, `role`, `add_time`, `update_time`) |
| 119 | +VALUES (1, 'admin', 'e10adc3949ba59abbe56e057f20f883e', '', 0, 'Jack', 'ADMIN', now(), now()), |
| 120 | + (2, 'user', 'e10adc3949ba59abbe56e057f20f883e', '', 0, 'Lucy', 'NORMAL', now(), now()); |
| 121 | + |
| 122 | +INSERT INTO `xxl_mq_access_token` (id, `access_token`, `status`, add_time, update_time) |
| 123 | +VALUES (1, 'defaultaccesstoken', 0, now(), now()); |
| 124 | + |
| 125 | +INSERT INTO `xxl_mq_application` (id, appname, name, `desc`, add_time, update_time) |
| 126 | +VALUES (1, 'xxl-mq-sample', '示例应用', '示例应用,演示使用', '2025-01-18 20:03:13', '2025-01-18 20:03:13'); |
| 127 | + |
| 128 | + |
| 129 | +commit; |
0 commit comments