springboot整合Nacos配置中心报错create config service error!properties=Nacos

描述:最近在整合谷粒商城项目的过程中发现一个问题,

create config service error!properties=NacosConfigProperties{serverAddr='null', encode='null', group='DEFAULT_GROUP', prefix='null', fileExtension='properties', timeout=3000, endpoint='null', namespace='null', accessKey='null', secretKey='null', contextPath='null', clusterName='null', name='null', sharedDataids='null', refreshableDataids='null', extConfig=null},e=,

问题:

大致意思就是说没有获取到配置中心服务地址相关的信息;

分析:

1.检查项目是否有bootstrap.properties配置文件并且服务地址配置无误;

spring.application.name=模块名

spring.cloud.nacos.config.server-addr=127.0.0.1:8848

2.以上无误可以断定我们服务启动没有加载到配置文件,检查了下我boot的版本得出:

① Spring Boot 版本 小于 2.4.0 版本,添加以下依赖

<dependency>

<groupId>org.springframework.cloud</groupId>

<artifactId>spring-cloud-context</artifactId>

</dependency>

② Spring Boot 版本 大于 2.4.0 版本,添加以下依赖

<dependency>

<groupId>org.springframework.cloud</groupId>

<artifactId>spring-cloud-starter-bootstrap</artifactId>

</dependency>

配置完成后可以看到服务可以正常启动,并且配置中心配置也生效!!!

### Nacos SQL 文件的区别与作用 #### 1. **`nacos-sql.sql` 的用途** `nacos-sql.sql` 是用于初始化 Nacos 数据库表结构的一个脚本文件。该文件通常包含了创建数据库表以及插入初始数据的 SQL 语句,主要用于支持 Nacos 配置管理和服务注册功能所需的元数据存储[^1]。 以下是 `nacos-sql.sql` 中可能包含的内容: - 创建配置中心所需的核心表(如 `config_info`, `config_tag_relation`, `group_capacity` 等)。 - 插入默认的数据记录以便于服务正常运行。 示例代码片段如下所示: ```sql CREATE TABLE config_info ( id BIGINT AUTO_INCREMENT PRIMARY KEY, data_id VARCHAR(255) NOT NULL, group_id VARCHAR(255), content LONGTEXT NOT NULL, md5 VARCHAR(32), src_ip VARCHAR(50), src_user TEXT, gmt_create TIMESTAMP DEFAULT CURRENT_TIMESTAMP, gmt_modified TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ); ``` --- #### 2. **`schema.sql` 的用途** `schema.sql` 主要针对嵌入式 Derby 数据库设计,其目的是定义并初始化 Nacos 使用的本地化数据库模式。当 Nacos 启动时,默认会尝试加载此文件中的 SQL 脚本来构建必要的表结构和索引[^2]。 然而,在实际生产环境中,推荐使用外部关系型数据库(如 MySQL),因此可以忽略或替换掉 `schema.sql` 所对应的逻辑实现部分。如果遇到类似于 “load derby-schema.sql error” 这样的异常,则表明当前环境未适配好目标数据库连接参数或者切换至其他类型的持久层方案失败。 下面是一个典型的例子展示如何通过修改配置来规避这些问题: ```properties db.num=1 db.url.0=jdbc:mysql://localhost:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC db.user.0=root db.password.0=password ``` --- #### 3. **两者的区别总结** | 特性 | `nacos-sql.sql` | `schema.sql` | |---------------------|-----------------------------------------|------------------------------------------| | **适用场景** | 外部 MySQL 数据库存储 | 嵌入式 Derby 数据库存储 | | **主要功能** | 初始化完整的数据库表及其依赖 | 定义基础架构层面的表结构 | | **触发时机** | 用户手动执行导入 | 自动由程序内部调用 | 尽管两者都涉及到了数据库建模方面的工作,但由于定位不同所以在具体应用过程中需加以区分对待。 --- ### 补充说明 对于某些版本而言还存在另外一种形式即命名为 `mysql-nacos.sql` 或者类似的变体名称,它们本质上都是为了满足特定需求而定制出来的SQL脚本集合[^3]。例如在官方文档里提到过这样一个实例操作命令用来完成账户密码设置工作: ```bash source /path/to/mysql-nacos.sql; ``` 这一步骤确保了新安装的服务能够拥有合法的身份验证机制从而保障整个系统的安全性。 ---
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

熊掌渔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值