我当日记记录的,为了防止我自己忘了!!!想要处理办法直接拉到最下边!!!

先贴一串错误日志(不知道算不算是难,反正就这么个小问题困住我好几天)!!!

 几天前朋友推个开源微服务项目,通过Nacos管理配置,结果Nacos配置不通了!

先说明情况,官网下载nacos2.1后,按照手册成功启动。但是在配置本地数据库连接后,就无法启动。

配置文件:

# db mysql

spring.datasource.platform=mysql

db.num=1

db.url.0=jdbc:mysql://localhost:3306/nacos-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC

db.user=root

db.password=password

一开始以为是数据库版本的问题,我用的是MySQL8,资料上一般都使用MySQL5.7,所以优先尝试更改连接驱动(无效):

##MySQL5:com.mysql.jdbc.Driver

##MySQL8:com.mysql.cj.jdbc.Driver

# db mysql

db.driver-class-name=com.mysql.cj.jdbc.Driver //这里添加MySQL8的驱动

spring.datasource.platform=mysql

db.num=1

db.url.0=jdbc:mysql://localhost:3306/nacos-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC

db.user=root

db.password=password

然后怀疑是数据库的问题,再尝试更改用户:

在MySQL下输入(无效):

update user set host = '%' where user = 'root';

flush privileges;

后来干脆,直接更改数据库,直接使用MySQL5.7版本,但是还是没有效果!网上所有的办法都试了,没有效果,而且2的手册里也没有怎么连接数据库(亦或是我没找到!)。

最终解决办法:

在user和password后边加个.0

# db mysql

spring.datasource.platform=mysql

db.num=1

db.url.0=jdbc:mysql://localhost:3306/nacos-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC

db.user.0=root //就是这里!!!

db.password.0=password

不明觉厉!

查看原文