nacos适配达梦数据库
一、下载源码
源码我直接下载gitee上nacos2.2.3的,具体链接:https://gitee.com/mirrors/Nacos/tree/2.2.3,具体如下图:

二、集成达梦数据库驱动
解压源码包,用idea打开源码,等idea和maven编译完成,若是Jdk8的话,最好安装300以上的小版本。

获取达梦数据库驱动,驱动包在安装目录的jdbc下,该驱动包是windows安装包里勾选了驱动,才会生成这些驱动。具体如下图所示:



将驱动包复制到 nacos-config、nacos-naming 两个模块的resources/lib目录下,并添加依赖:
<dependency>
<groupId>com.dameng</groupId>
<artifactId>Dm8JdbcDriver18</artifactId>
<version>1.8</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/resources/lib/DmJdbcDriver18.jar</systemPath>
</dependency>

三、修改启动配置
修改nacos-console模块的application.properties,具体如下:

其中,url参数详见链接:DM JDBC 编程指南 | 达梦技术文档

四、达梦数据库初始化SQL
在达梦数据库运行下面SQL:
-- 创建表空间
CREATE TABLESPACE "NACOS" DATAFILE 'NACOS.DBF' SIZE 300 autoextend on maxsize 67108863 CACHE = NORMAL;
-- 创建用户
CREATE USER "NACOS" IDENTIFIED BY "NACOS*12345678" LIMIT PASSWORD_LOCK_TIME 1, PASSWORD_GRACE_TIME 10 DEFAULT TABLESPACE "NACOS";
-- 给用户授权
GRANT "RESOURCE","PUBLIC","DBA","VTI" TO "NACOS";-- 创建nacos用到的的表
CREATE TABLE "NACOS"."CONFIG_INFO"
("ID" BIGINT IDENTITY(1, 1) NOT NULL,"DATA_ID" VARCHAR(255) NOT NULL,"GROUP_ID" VARCHAR(255),"CONTENT" CLOB NOT NULL,"MD5" VARCHAR(32),"GMT_CREATE" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP() NOT NULL,"GMT_MODIFIED" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP() NOT NULL,"SRC_USER" TEXT,"SRC_IP" VARCHAR(50),"APP_NAME" VARCHAR(128),"TENANT_ID" VARCHAR(128) DEFAULT '',"C_DESC" VARCHAR(256),"C_USE" VARCHAR(64),"EFFECT" VARCHAR(64),"TYPE" VARCHAR(64),"C_SCHEMA" TEXT,"ENCRYPTED_DATA_KEY" TEXT NOT NULL,NOT CLUSTER PRIMARY KEY("ID"),CONSTRAINT "UK_CONFIGINFO_DATAGROUPTENANT" UNIQUE("DATA_ID", "GROUP_ID", "TENANT_ID")) ;COMMENT ON TABLE "NACOS"."CONFIG_INFO" IS 'config_info';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO"."ID" IS 'id';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO"."DATA_ID" IS 'data_id';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO"."CONTENT" IS 'content';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO"."MD5" IS 'md5';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO"."GMT_CREATE" IS '创建时间';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO"."GMT_MODIFIED" IS '修改时间';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO"."SRC_USER" IS 'source user';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO"."SRC_IP" IS 'source ip';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO"."TENANT_ID" IS '租户字段';CREATE UNIQUE INDEX "INDEX16097400477400" ON "NACOS"."CONFIG_INFO"("ID" ASC) ;CREATE TABLE "NACOS"."CONFIG_INFO_AGGR"
("ID" BIGINT IDENTITY(1, 1) NOT NULL,"DATA_ID" VARCHAR(255) NOT NULL,"GROUP_ID" VARCHAR(255) NOT NULL,"DATUM_ID" VARCHAR(255) NOT NULL,"CONTENT" CLOB NOT NULL,"GMT_MODIFIED" TIMESTAMP(0) NOT NULL,"APP_NAME" VARCHAR(128),"TENANT_ID" VARCHAR(128) DEFAULT '',NOT CLUSTER PRIMARY KEY("ID"),CONSTRAINT "UK_CONFIGINFOAGGR_DATAGROUPTENANTDATUM" UNIQUE("DATA_ID", "GROUP_ID", "TENANT_ID", "DATUM_ID")) ;COMMENT ON TABLE "NACOS"."CONFIG_INFO_AGGR" IS '增加租户字段';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_AGGR"."ID" IS 'id';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_AGGR"."DATA_ID" IS 'data_id';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_AGGR"."GROUP_ID" IS 'group_id';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_AGGR"."DATUM_ID" IS 'datum_id';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_AGGR"."CONTENT" IS '内容';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_AGGR"."GMT_MODIFIED" IS '修改时间';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_AGGR"."TENANT_ID" IS '租户字段';CREATE UNIQUE INDEX "INDEX16097305729100" ON "NACOS"."CONFIG_INFO_AGGR"("ID" ASC) ;CREATE TABLE "NACOS"."CONFIG_INFO_BETA"
("ID" BIGINT IDENTITY(1, 1) NOT NULL,"DATA_ID" VARCHAR(255) NOT NULL,"GROUP_ID" VARCHAR(128) NOT NULL,"APP_NAME" VARCHAR(128),"CONTENT" CLOB NOT NULL,"BETA_IPS" VARCHAR(1024),"MD5" VARCHAR(32),"GMT_CREATE" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP() NOT NULL,"GMT_MODIFIED" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP() NOT NULL,"SRC_USER" TEXT,"SRC_IP" VARCHAR(50),"TENANT_ID" VARCHAR(128) DEFAULT '',"ENCRYPTED_DATA_KEY" TEXT NOT NULL,NOT CLUSTER PRIMARY KEY("ID"),CONSTRAINT "UK_CONFIGINFOBETA_DATAGROUPTENANT" UNIQUE("DATA_ID", "GROUP_ID", "TENANT_ID")) ;COMMENT ON TABLE "NACOS"."CONFIG_INFO_BETA" IS 'config_info_beta';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_BETA"."ID" IS 'id';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_BETA"."DATA_ID" IS 'data_id';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_BETA"."GROUP_ID" IS 'group_id';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_BETA"."APP_NAME" IS 'app_name';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_BETA"."CONTENT" IS 'content';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_BETA"."BETA_IPS" IS 'betaIps';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_BETA"."MD5" IS 'md5';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_BETA"."GMT_CREATE" IS '创建时间';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_BETA"."GMT_MODIFIED" IS '修改时间';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_BETA"."SRC_USER" IS 'source user';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_BETA"."SRC_IP" IS 'source ip';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_BETA"."TENANT_ID" IS '租户字段';CREATE UNIQUE INDEX "INDEX16097203229000" ON "NACOS"."CONFIG_INFO_BETA"("ID" ASC) ;CREATE TABLE "NACOS"."CONFIG_INFO_TAG"
("ID" BIGINT IDENTITY(1, 1) NOT NULL,"DATA_ID" VARCHAR(255) NOT NULL,"GROUP_ID" VARCHAR(128) NOT NULL,"TENANT_ID" VARCHAR(128) DEFAULT '',"TAG_ID" VARCHAR(128) NOT NULL,"APP_NAME" VARCHAR(128),"CONTENT" CLOB NOT NULL,"MD5" VARCHAR(32),"GMT_CREATE" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP() NOT NULL,"GMT_MODIFIED" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP() NOT NULL,"SRC_USER" TEXT,"SRC_IP" VARCHAR(50),NOT CLUSTER PRIMARY KEY("ID"),CONSTRAINT "UK_CONFIGINFOTAG_DATAGROUPTENANTTAG" UNIQUE("DATA_ID", "GROUP_ID", "TENANT_ID", "TAG_ID")) ;COMMENT ON TABLE "NACOS"."CONFIG_INFO_TAG" IS 'config_info_tag';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_TAG"."ID" IS 'id';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_TAG"."DATA_ID" IS 'data_id';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_TAG"."GROUP_ID" IS 'group_id';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_TAG"."TENANT_ID" IS 'tenant_id';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_TAG"."TAG_ID" IS 'tag_id';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_TAG"."APP_NAME" IS 'app_name';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_TAG"."CONTENT" IS 'content';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_TAG"."MD5" IS 'md5';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_TAG"."GMT_CREATE" IS '创建时间';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_TAG"."GMT_MODIFIED" IS '修改时间';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_TAG"."SRC_USER" IS 'source user';
COMMENT ON COLUMN "NACOS"."CONFIG_INFO_TAG"."SRC_IP" IS 'source ip';CREATE UNIQUE INDEX "INDEX16096985471400" ON "NACOS"."CONFIG_INFO_TAG"("ID" ASC) ;CREATE TABLE "NACOS"."CONFIG_TAGS_RELATION"
("ID" BIGINT NOT NULL,"TAG_NAME" VARCHAR(128) NOT NULL,"TAG_TYPE" VARCHAR(64),"DATA_ID" VARCHAR(255) NOT NULL,"GROUP_ID" VARCHAR(128) NOT NULL,"TENANT_ID" VARCHAR(128) DEFAULT '',"NID" BIGINT IDENTITY(1, 1) NOT NULL,NOT CLUSTER PRIMARY KEY("NID"),CONSTRAINT "UK_CONFIGTAGRELATION_CONFIGIDTAG" UNIQUE("ID", "TAG_NAME", "TAG_TYPE")) ;COMMENT ON TABLE "NACOS"."CONFIG_TAGS_RELATION" IS 'config_tag_relation';
COMMENT ON COLUMN "NACOS"."CONFIG_TAGS_RELATION"."ID" IS 'id';
COMMENT ON COLUMN "NACOS"."CONFIG_TAGS_RELATION"."TAG_NAME" IS 'tag_name';
COMMENT ON COLUMN "NACOS"."CONFIG_TAGS_RELATION"."TAG_TYPE" IS 'tag_type';
COMMENT ON COLUMN "NACOS"."CONFIG_TAGS_RELATION"."DATA_ID" IS 'data_id';
COMMENT ON COLUMN "NACOS"."CONFIG_TAGS_RELATION"."GROUP_ID" IS 'group_id';
COMMENT ON COLUMN "NACOS"."CONFIG_TAGS_RELATION"."TENANT_ID" IS 'tenant_id';CREATE INDEX "INDEX16096890650200" ON "NACOS"."CONFIG_TAGS_RELATION"("TENANT_ID" ASC) ;
CREATE UNIQUE INDEX "INDEX16096909541100" ON "NACOS"."CONFIG_TAGS_RELATION"("NID" ASC) ;CREATE TABLE "NACOS"."GROUP_CAPACITY"
("ID" BIGINT IDENTITY(1, 1) NOT NULL,"GROUP_ID" VARCHAR(128) DEFAULT '' NOT NULL,"QUOTA" BIGINT DEFAULT 0 NOT NULL,"USAGE" BIGINT DEFAULT 0 NOT NULL,"MAX_SIZE" BIGINT DEFAULT 0 NOT NULL,"MAX_AGGR_COUNT" BIGINT DEFAULT 0 NOT NULL,"MAX_AGGR_SIZE" BIGINT DEFAULT 0 NOT NULL,"MAX_HISTORY_COUNT" BIGINT DEFAULT 0 NOT NULL,"GMT_CREATE" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP() NOT NULL,"GMT_MODIFIED" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP() NOT NULL,NOT CLUSTER PRIMARY KEY("ID"),CONSTRAINT "UK_GROUP_ID" UNIQUE("GROUP_ID"),CHECK("QUOTA" >= 0),CHECK("USAGE" >= 0),CHECK("MAX_SIZE" >= 0),CHECK("MAX_AGGR_COUNT" >= 0),CHECK("MAX_AGGR_SIZE" >= 0),CHECK("MAX_HISTORY_COUNT" >= 0)) ;COMMENT ON TABLE "NACOS"."GROUP_CAPACITY" IS '集群、各Group容量信息表';
COMMENT ON COLUMN "NACOS"."GROUP_CAPACITY"."ID" IS '主键ID';
COMMENT ON COLUMN "NACOS"."GROUP_CAPACITY"."GROUP_ID" IS 'Group ID,空字符表示整个集群';
COMMENT ON COLUMN "NACOS"."GROUP_CAPACITY"."QUOTA" IS '配额,0表示使用默认值';
COMMENT ON COLUMN "NACOS"."GROUP_CAPACITY"."USAGE" IS '使用量';
COMMENT ON COLUMN "NACOS"."GROUP_CAPACITY"."MAX_SIZE" IS '单个配置大小上限,单位为字节,0表示使用默认值';
COMMENT ON COLUMN "NACOS"."GROUP_CAPACITY"."MAX_AGGR_COUNT" IS '聚合子配置最大个数,,0表示使用默认值';
COMMENT ON COLUMN "NACOS"."GROUP_CAPACITY"."MAX_AGGR_SIZE" IS '单个聚合数据的子配置大小上限,单位为字节,0表示使用默认值';
COMMENT ON COLUMN "NACOS"."GROUP_CAPACITY"."MAX_HISTORY_COUNT" IS '最大变更历史数量';
COMMENT ON COLUMN "NACOS"."GROUP_CAPACITY"."GMT_CREATE" IS '创建时间';
COMMENT ON COLUMN "NACOS"."GROUP_CAPACITY"."GMT_MODIFIED" IS '修改时间';CREATE UNIQUE INDEX "INDEX16096746763900" ON "NACOS"."GROUP_CAPACITY"("ID" ASC) ;CREATE TABLE "NACOS"."HIS_CONFIG_INFO"
("ID" BIGINT NOT NULL,"NID" BIGINT IDENTITY(1, 1) NOT NULL,"DATA_ID" VARCHAR(255) NOT NULL,"GROUP_ID" VARCHAR(128) NOT NULL,"APP_NAME" VARCHAR(128),"CONTENT" CLOB NOT NULL,"MD5" VARCHAR(32),"GMT_CREATE" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP() NOT NULL,"GMT_MODIFIED" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP() NOT NULL,"SRC_USER" TEXT,"SRC_IP" VARCHAR(50),"OP_TYPE" CHAR(10),"TENANT_ID" VARCHAR(128) DEFAULT '',"ENCRYPTED_DATA_KEY" TEXT NOT NULL,NOT CLUSTER PRIMARY KEY("NID")) ;COMMENT ON TABLE "NACOS"."HIS_CONFIG_INFO" IS '多租户改造';
COMMENT ON COLUMN "NACOS"."HIS_CONFIG_INFO"."APP_NAME" IS 'app_name';
COMMENT ON COLUMN "NACOS"."HIS_CONFIG_INFO"."TENANT_ID" IS '租户字段';CREATE INDEX "IDX_GMT_CREATE" ON "NACOS"."HIS_CONFIG_INFO"("GMT_CREATE" ASC) ;
CREATE INDEX "IDX_DID" ON "NACOS"."HIS_CONFIG_INFO"("DATA_ID" ASC) ;
CREATE INDEX "IDX_GMT_MODIFIED" ON "NACOS"."HIS_CONFIG_INFO"("GMT_MODIFIED" ASC) ;
CREATE UNIQUE INDEX "INDEX16096449256900" ON "NACOS"."HIS_CONFIG_INFO"("NID" ASC) ;CREATE TABLE "NACOS"."PERMISSIONS"
("ROLE" VARCHAR(50) NOT NULL,"RESOURCE" VARCHAR(255) NOT NULL,"ACTION" VARCHAR(8) NOT NULL,CONSTRAINT "UK_ROLE_PERMISSION" UNIQUE("ROLE", "RESOURCE", "ACTION")) ;CREATE TABLE "NACOS"."ROLES"
("USERNAME" VARCHAR(50) NOT NULL,"ROLE" VARCHAR(50) NOT NULL,CONSTRAINT "IDX_USER_ROLE" UNIQUE("USERNAME", "ROLE")) ;CREATE TABLE "NACOS"."TENANT_CAPACITY"
("ID" BIGINT IDENTITY(1, 1) NOT NULL,"TENANT_ID" VARCHAR(128) DEFAULT '' NOT NULL,"QUOTA" BIGINT DEFAULT 0 NOT NULL,"USAGE" BIGINT DEFAULT 0 NOT NULL,"MAX_SIZE" BIGINT DEFAULT 0 NOT NULL,"MAX_AGGR_COUNT" BIGINT DEFAULT 0 NOT NULL,"MAX_AGGR_SIZE" BIGINT DEFAULT 0 NOT NULL,"MAX_HISTORY_COUNT" BIGINT DEFAULT 0 NOT NULL,"GMT_CREATE" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP() NOT NULL,"GMT_MODIFIED" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP() NOT NULL,NOT CLUSTER PRIMARY KEY("ID"),CONSTRAINT "UK_TENANT_ID" UNIQUE("TENANT_ID"),CHECK("QUOTA" >= 0),CHECK("USAGE" >= 0),CHECK("MAX_SIZE" >= 0),CHECK("MAX_AGGR_COUNT" >= 0),CHECK("MAX_AGGR_SIZE" >= 0),CHECK("MAX_HISTORY_COUNT" >= 0)) ;COMMENT ON TABLE "NACOS"."TENANT_CAPACITY" IS '租户容量信息表';
COMMENT ON COLUMN "NACOS"."TENANT_CAPACITY"."ID" IS '主键ID';
COMMENT ON COLUMN "NACOS"."TENANT_CAPACITY"."TENANT_ID" IS 'Tenant ID';
COMMENT ON COLUMN "NACOS"."TENANT_CAPACITY"."QUOTA" IS '配额,0表示使用默认值';
COMMENT ON COLUMN "NACOS"."TENANT_CAPACITY"."USAGE" IS '使用量';
COMMENT ON COLUMN "NACOS"."TENANT_CAPACITY"."MAX_SIZE" IS '单个配置大小上限,单位为字节,0表示使用默认值';
COMMENT ON COLUMN "NACOS"."TENANT_CAPACITY"."MAX_AGGR_COUNT" IS '聚合子配置最大个数';
COMMENT ON COLUMN "NACOS"."TENANT_CAPACITY"."MAX_AGGR_SIZE" IS '单个聚合数据的子配置大小上限,单位为字节,0表示使用默认值';
COMMENT ON COLUMN "NACOS"."TENANT_CAPACITY"."MAX_HISTORY_COUNT" IS '最大变更历史数量';
COMMENT ON COLUMN "NACOS"."TENANT_CAPACITY"."GMT_CREATE" IS '创建时间';
COMMENT ON COLUMN "NACOS"."TENANT_CAPACITY"."GMT_MODIFIED" IS '修改时间';CREATE UNIQUE INDEX "INDEX16096046055000" ON "NACOS"."TENANT_CAPACITY"("ID" ASC) ;CREATE TABLE "NACOS"."TENANT_INFO"
("ID" BIGINT IDENTITY(1, 1) NOT NULL,"KP" VARCHAR(128) NOT NULL,"TENANT_ID" VARCHAR(128) DEFAULT '',"TENANT_NAME" VARCHAR(128) DEFAULT '',"TENANT_DESC" VARCHAR(256),"CREATE_SOURCE" VARCHAR(32),"GMT_CREATE" BIGINT NOT NULL,"GMT_MODIFIED" BIGINT NOT NULL,NOT CLUSTER PRIMARY KEY("ID"),CONSTRAINT "UK_TENANT_INFO_KPTENANTID" UNIQUE("KP", "TENANT_ID")) ;COMMENT ON TABLE "NACOS"."TENANT_INFO" IS 'tenant_info';
COMMENT ON COLUMN "NACOS"."TENANT_INFO"."ID" IS 'id';
COMMENT ON COLUMN "NACOS"."TENANT_INFO"."KP" IS 'kp';
COMMENT ON COLUMN "NACOS"."TENANT_INFO"."TENANT_ID" IS 'tenant_id';
COMMENT ON COLUMN "NACOS"."TENANT_INFO"."TENANT_NAME" IS 'tenant_name';
COMMENT ON COLUMN "NACOS"."TENANT_INFO"."TENANT_DESC" IS 'tenant_desc';
COMMENT ON COLUMN "NACOS"."TENANT_INFO"."CREATE_SOURCE" IS 'create_source';
COMMENT ON COLUMN "NACOS"."TENANT_INFO"."GMT_CREATE" IS '创建时间';
COMMENT ON COLUMN "NACOS"."TENANT_INFO"."GMT_MODIFIED" IS '修改时间';CREATE INDEX "IDX_TENANT_ID" ON "NACOS"."TENANT_INFO"("TENANT_ID" ASC) ;
CREATE UNIQUE INDEX "INDEX16095846853300" ON "NACOS"."TENANT_INFO"("ID" ASC) ;CREATE TABLE "NACOS"."USERS"
("USERNAME" VARCHAR(50) NOT NULL,"PASSWORD" VARCHAR(500) NOT NULL,"ENABLED" TINYINT NOT NULL,NOT CLUSTER PRIMARY KEY("USERNAME")) ;
CREATE UNIQUE INDEX "PRIMARY" ON "NACOS"."USERS"("USERNAME" ASC) ;
INSERT INTO nacos.users (username, password, enabled) VALUES ('nacos', '$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu', TRUE);
INSERT INTO nacos.roles (username, role) VALUES ('nacos', 'ROLE_ADMIN');
commit;
这些sql可以放到distribution\conf\dm-schema.sql中,后续打包能看到该sql,如图:

五、新增达梦数据库Mapper文件
将nacos-datasource-plugin里的mysql的mapper文件复制到新的dm文件夹下改名,并修改将相应的常量和配置,具体如下:



六、启动Nacos
找到 com.alibaba.nacos.Nacos类,启动即可,或者加入 -Dnacos.standalone=true 参数单机启动,集群启动需要在 用户文件夹下的 nacos/conf 下放置 cluster.conf 文件。




另外注意nacos的url一定不能写错,否则报:Caused by: java.lang.IllegalStateException: No DataSource set

七、打包并运行Nacos
配置环境变量,MAVEN_HOME和JAVA_HOME,以及在Path中添加bin路径。具体如下:


接着到nacos项目路径下运行:
mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U
或者:mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U -Dcheckstyle.skip

成功后,nacos包会在 Nacos-2.2.3\distribution\target 目录下:

将新打包的nacos-server-2.2.3.zip复制解压,如下图:

到nacos/conf目录下修改 application.properties,具体参考源码的配置文件。
在nacos/bin目录下cmd运行:startup.cmd -m standalone。

相关文章:
nacos适配达梦数据库
一、下载源码 源码我直接下载gitee上nacos2.2.3的,具体链接:https://gitee.com/mirrors/Nacos/tree/2.2.3,具体如下图: 二、集成达梦数据库驱动 解压源码包,用idea打开源码,等idea和maven编译完成ÿ…...
CTFhub-RCE-读取源代码
源代码: <?php error_reporting(E_ALL); if (isset($_GET[file])) { if ( substr($_GET["file"], 0, 6) "php://" ) { include($_GET["file"]); } else { echo "Hacker!!!"; } } else {…...
Ansible playbook详解
playbook是ansible用于配置,部署,和被管理被控节点的剧本 playbook常用的YMAL格式:(文件名称以 .yml结尾) 1、文件的第一行应该以 "---" (三个连字符)开始,表明YMAL文件的开始。 2、在同一…...
Linux编辑器:vim的简单介绍及使用
目录 1.什么是vim 2.vim的基本概念 3.vim 的基本操作 4. 各模式下的命令集 4.1 正常模式命令集 4.2 末行模式命令集 5.补充 5.1 vim支持多文件编辑 5.2 vim 的配置 1.vim 配置原理 2. 常用简单配置选项: 3. 使用插件 1.什么是vim Vim 是从 vi 发展出…...
Redhat7查看时区、修改时区
问题: 安装好redhat7之后,发现时间和物理机上面的网络时间不一致,于是查看本着修改时间的目的,却发现原来是时区的问题。 解决步骤: 查看时区状态信息 timedatectl修改时区到亚洲/上海 timedatectl set-timezone A…...
OpenCV踩坑笔记使用笔记入门笔记整合SpringBoot笔记大全
springboot开启摄像头抓拍照片并上传实现&问题记录 NotAllowedErrot: 请求的媒体源不能使用,以下情况会返回该错误: 当前页面内容不安全,没有使用HTTPS没有通过用户授权NotFoundError: 没有找到指定的媒体通道NoReadableError: 访问硬件设备出错Ov…...
【数据结构】栈和队列的模拟实现(两个方式实现)
前言 💓作者简介: 加油,旭杏,目前大二,正在学习C,数据结构等👀 💓作者主页:加油,旭杏的主页👀 ⏩本文收录在:再识C进阶的专栏…...
OpenCV+相机校准和3D重建
相机校准至少需要10个测试图案,所需的重要输入数据是3D现实世界点集以及图像中这些点的相应2D坐标。3D点称为对象点,而2D图像点称为图像点。 准备工作 除了棋盘,我们还可以使用圆形网格。 在这种情况下,我们必须使用函数cv.find…...
2023.11.14-hive之表操作练习和文件导入练习
目录 需求1.数据库基本操作 需求2. 默认分隔符案例 需求1.数据库基本操作 -- 1.创建数据库test_sql,cs1,cs2,cs3 create database test_sql; create database cs1; create database cs2; create database cs3; -- 2.1删除数据库cs2 drop database cs2; -- 2.2在cs3库中创建…...
idea2023启动springboot项目如何指定配置文件
方法一: 方法二: 举例:...
在 uniapp 中 一键转换单位 (px 转 rpx)
在 uniapp 中 一键转换单位 px 转 rpx Uni-app 官方转换位置利用【px2rpx】插件Ctrl S一键全部转换下载插件修改插件 Uni-app 官方转换位置 首先在App.vue中输入这个: uni.getSystemInfo({success(res) {console.log("屏幕宽度", res.screenWidth) //屏…...
SQL对数据进行去重
工作中使用SQL对数据进行处理计算时可能会遇到这样的问题;读取的表数据会有重复,或者我们关注的几个字段的数据会有重复,直接使用原表数据会引起计算结果不准或者做表连接时产生笛卡尔积。 本文记录使用SQL进行数据去重的几种算法。 distinc…...
登录注册代码模板(Vue3+SpringBoot)[邮箱发送验证码(HTML)、RSA 加密解密(支持长文本)、黑暗与亮色主题切换、AOP信息校验]
文章归档:https://www.yuque.com/u27599042/coding_star/cx5ptule64utcr9e 仓库地址 https://gitee.com/tongchaowei/login-register-template 网页效果展示 相关说明 在该代码模板中,实现了如下功能: 邮箱发送验证码(邮件内容…...
【计算机网络】VRRP协议理论和配置
目录 1、VRRP虚拟路由器冗余协议 1.1、协议作用 1.2、名词解释 1.3、简介 1.4、工作原理 1.5、应用实例 2、 VRRP配置 2.1、配置命令 2.2、拓扑与配置: 1、VRRP虚拟路由器冗余协议 1.1、协议作用 虚拟路由冗余协议(Virtual Router Redundancy Protocol&am…...
ubuntu操作系统的docker更换存储目录
前言 要将Docker的存储目录更改为/home/docker,你需要进行以下步骤: 目录 前言1、停止Docker服务2、创建新的存储目录3、编辑Docker配置文件4、启动Docker服务5、验证更改 1、停止Docker服务 首先停止Docker守护进程,可以使用以下命令&…...
【人工智能Ⅰ】6-机器学习之分类
【人工智能Ⅰ】6-机器学习之分类 6-1 机器学习在人工智能中的地位 学习能力是智能的本质 人工智能 > 机器学习 > 深度学习 什么是机器学习? baidu:多领域交叉学科(做什么) wiki:the study of algorithms and…...
本地部署_语音识别工具_Whisper
1 简介 Whisper 是 OpenAI 的语音识别系统(几乎是最先进),它是免费的开源模型,可供本地部署。 2 docker https://hub.docker.com/r/onerahmet/openai-whisper-asr-webservice 3 github https://github.com/ahmetoner/whisper…...
秋招求职经验分享
0.个人简介 2023年10月底,最终拿到了海康威视、汇川技术等十余家公司的Offer,最终签了自己心仪的Offer,秋招对我来说算是正式结束了,写个博客纪念一下,顺便分享以下秋招的经验,为后来人求职提供一些参考。…...
DNS域名解析
目录 1.概述 1.1产生原因 1.2作用 1.3连接方式 1.4因特网的域名结构 1.4.1拓扑 1.4.2分类 1.4.3域名服务器类型划分 2. DNS域名解析过程 2.1分类 2.2解析图 2.2.2过程分析 3.搭建DNS域名解析服务器 3.1.概述 3.2安装软件 3.3bind服务中三个关键文件 3.4主配置…...
Flink SQL --命令行的使用(02)
1、窗口函数: 1、创建表: -- 创建kafka 表 CREATE TABLE bid (bidtime TIMESTAMP(3),price DECIMAL(10, 2) ,item STRING,WATERMARK FOR bidtime AS bidtime ) WITH (connector kafka,topic bid, -- 数据的topicproperties.bootstrap.servers m…...
论文AI率过高怎么降?实测有效方法+免费工具推荐
当前不少学生和科研人员在写论文时都遇到过AIGC率超标的问题,不用焦虑,只要找对方法,就能有效消除AI生成痕迹,顺利通过学校的AIGC检测。 一、AIGC检测的核心逻辑是什么? 很多人会疑惑:明明是自己逐字敲的论…...
2026年Magento独立站中国商家收单支付平台综合评估
2026年,全球收单市场持续分化。监管门槛抬升使支付牌照成为稀缺资源,资金周转效率从“加分项”变为“必选项”。对于使用Magento搭建独立站的中国商家,收单平台的选择已从单一的费率比较,升级为对合规深度、资金效率、本地化能力的…...
ESP-01s固件烧录与Arduino编程:从接线玄学到一键下载的避坑指南
1. ESP-01s模块入门:为什么你的接线总是出错? 第一次接触ESP-01s的朋友,十有八九会在烧录固件或上传程序时遇到各种莫名其妙的失败。我见过太多人把模块插上CH340就以为万事大吉,结果在电脑前折腾一整天都搞不定下载。这其实是因为…...
建议收藏!我开发了一个免费无限制的AI绘画公益站!
大家好,最近我做了一个小网站,叫 Dreamify ,一个可以让你随便玩AI画画的小工具。不收费、不限次数、不用登录,想画就画,全凭兴趣。 今天就想简单分享一下它,顺便邀请你也来玩玩看。 🎨 为什么…...
2026届必备的六大AI写作助手推荐
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 在现在这个人工智能生成内容已经被广泛运用的当下,降低AIGC检测概率的工具顺势冒…...
ConsoleZ终极指南:10个技巧提升Windows终端生产力
ConsoleZ终极指南:10个技巧提升Windows终端生产力 【免费下载链接】console 项目地址: https://gitcode.com/gh_mirrors/conso/console ConsoleZ是一个功能强大的Windows终端增强工具,专为提升命令行工作效率而设计。作为Console 2的分支版本&am…...
【Python 3.14 JIT性能调优权威指南】:20年CPython核心开发者亲授3大接入瓶颈突破法
第一章:Python 3.14 JIT编译器的演进脉络与接入价值Python 3.14 引入了实验性但高度集成的内置 JIT(Just-In-Time)编译器,标志着 CPython 运行时首次在官方发行版中提供可生产级启用的动态编译能力。该 JIT 并非独立运行时或第三方…...
AI建站工具怎么选?一篇讲透选型标准与对比逻辑
面对市面上五花八门的“智能建站”、“免代码建站”宣传,很多人越看越糊涂:到底哪个才是真的适合我?是选AI自动生成的,还是拖拽式更灵活?这篇不直接给答案,而是先提供一套通用的筛选标准,再帮你…...
ai辅助tomcat调优:用自然语言指令让快马生成专业级服务器配置
最近在准备一个Spring MVC项目的上线,作为后端负责人,Tomcat的调优配置成了我的重点工作。传统的手动配置不仅耗时,还容易遗漏关键参数。这次尝试了用AI辅助开发的方式,通过自然语言描述需求,让InsCode(快马)平台直接生…...
HarmonyOS 6学习:Canvas实现圆角矩形进度条
在HarmonyOS应用开发中,进度条是展示任务进度、加载状态和数据可视化的重要组件。虽然系统提供了Progress组件,但在需要高度定制化、复杂视觉效果或特殊交互的场景下,开发者常常面临以下困境:样式限制:Progress组件难以…...
