From 85b64d7e8d65577fc57f11c12ec00e468be671ad Mon Sep 17 00:00:00 2001 From: kanzihuang Date: Mon, 4 Sep 2023 23:07:36 +0800 Subject: [PATCH] =?UTF-8?q?feature:=20=E6=8B=86=E5=88=86=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=E5=AE=9E=E4=BE=8B=E7=9A=84SQL=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../migrations/migrate-database-instance.sql | 67 +++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 server/migrations/migrate-database-instance.sql diff --git a/server/migrations/migrate-database-instance.sql b/server/migrations/migrate-database-instance.sql new file mode 100644 index 00000000..21b1cab3 --- /dev/null +++ b/server/migrations/migrate-database-instance.sql @@ -0,0 +1,67 @@ +CREATE TABLE `t_instance` ( + `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `name` varchar(32) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '数据库实例名称', + `host` varchar(100) COLLATE utf8mb4_bin NOT NULL, + `port` int(8) NOT NULL, + `username` varchar(255) COLLATE utf8mb4_bin NOT NULL, + `password` varchar(255) COLLATE utf8mb4_bin DEFAULT NULL, + `type` varchar(20) COLLATE utf8mb4_bin NOT NULL COMMENT '数据库实例类型(mysql...)', + `params` varchar(125) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '其他连接参数', + `network` varchar(20) COLLATE utf8mb4_bin DEFAULT NULL, + `ssh_tunnel_machine_id` bigint(20) DEFAULT NULL COMMENT 'ssh隧道的机器id', + `remark` varchar(125) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '备注,描述等', + `create_time` datetime DEFAULT NULL, + `creator_id` bigint(20) DEFAULT NULL, + `creator` varchar(32) COLLATE utf8mb4_bin DEFAULT NULL, + `update_time` datetime DEFAULT NULL, + `modifier_id` bigint(20) DEFAULT NULL, + `modifier` varchar(32) COLLATE utf8mb4_bin DEFAULT NULL, + `is_deleted` tinyint(8) NOT NULL DEFAULT '0', + `delete_time` datetime DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='数据库实例信息表'; + +ALTER TABLE t_db + ADD COLUMN instance_id bigint(20) UNSIGNED NULL AFTER tag_path; + +BEGIN; + +INSERT INTO t_sys_resource (id, pid, ui_path, `type`, status, name, code, weight, meta, creator_id, creator, modifier_id, modifier, create_time, update_time, is_deleted, delete_time) VALUES (135, 36, 'dbms23ax/X0f4BxT0/', 1, 1, '数据库实例管理', 'instances', 1693040706, '{\"component\":\"ops/db/InstanceList\",\"icon\":\"Coin\",\"isKeepAlive\":true,\"routeName\":\"InstanceList\"}', 1, 'admin', 1, 'admin', '2023-08-26 09:05:07', '2023-08-29 22:35:11', 0, NULL); + +INSERT INTO t_sys_resource (id, pid, ui_path, `type`, status, name, code, weight, meta, creator_id, creator, modifier_id, modifier, create_time, update_time, is_deleted, delete_time) VALUES (136, 133, 'dbms23ax/X0f4BxT0/D23fUiBr/', 2, 1, '实例保存', 'instance:save', 1693041001, 'null', 1, 'admin', 1, 'admin', '2023-08-26 09:10:02', '2023-08-26 09:10:02', 0, NULL); + +INSERT INTO t_sys_resource (id, pid, ui_path, `type`, status, name, code, weight, meta, creator_id, creator, modifier_id, modifier, create_time, update_time, is_deleted, delete_time) VALUES (137, 133, 'dbms23ax/X0f4BxT0/mJlBeTCs/', 2, 1, '基本权限', 'instance', 1693041055, 'null', 1, 'admin', 1, 'admin', '2023-08-26 09:10:55', '2023-08-26 09:10:55', 0, NULL); + +INSERT INTO t_sys_resource (id, pid, ui_path, `type`, status, name, code, weight, meta, creator_id, creator, modifier_id, modifier, create_time, update_time, is_deleted, delete_time) VALUES (138, 133, 'dbms23ax/X0f4BxT0/Sgg8uPwz/', 2, 1, '实例删除', 'instance:del', 1693041084, 'null', 1, 'admin', 1, 'admin', '2023-08-26 09:11:24', '2023-08-26 09:11:24', 0, NULL); + +INSERT INTO `t_sys_role_resource` (role_id,resource_id,creator_id,creator,create_time,is_deleted,delete_time) VALUES + (1,135,1,'admin','2023-08-30 20:17:00', 0, NULL), + (1,136,1,'admin','2023-08-30 20:17:00', 0, NULL), + (1,137,1,'admin','2023-08-30 20:17:00', 0, NULL), + (1,138,1,'admin','2023-08-30 20:17:00', 0, NULL); + +INSERT INTO t_instance (`host`, `port`, `username`, `password`, `type`, `params`, `network`, `ssh_tunnel_machine_id`, `remark`, `create_time`, `creator_id`, `creator`, `update_time`, `modifier_id`, `modifier`, `is_deleted`, `delete_time`) +SELECT DISTINCT `host`, `port`, `username`, `password`, `type`, `params`, `network`, `ssh_tunnel_machine_id`, '', '2023-08-30 15:04:07', 1, 'admin', '2023-08-30 15:04:07', 1, 'admin', 0, NULL +FROM t_db +WHERE is_deleted = 0; + +UPDATE t_instance SET name = CONCAT('instance_', id) +WHERE name is NULL; + +UPDATE t_db a, t_instance b SET a.instance_id = b.id +WHERE a.`host`=b.`host` and a.`port`=b.`port` and a.`username`=b.`username` and a.`password`=b.`password` and a.`type`=b.`type` and a.`params`=b.`params` and a.`network`=b.`network` and a.`ssh_tunnel_machine_id`=b.`ssh_tunnel_machine_id`; + +COMMIT; + +ALTER TABLE t_db + MODIFY COLUMN instance_id bigint(20) UNSIGNED NOT NULL AFTER tag_path; + +ALTER TABLE t_db +DROP COLUMN `host`, +DROP COLUMN `port`, +DROP COLUMN `username`, +DROP COLUMN `password`, +DROP COLUMN `type`, +DROP COLUMN `params`, +DROP COLUMN `network`, +DROP COLUMN `ssh_tunnel_machine_id`; \ No newline at end of file