微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

初识Springcloud Alibaba nacos遇到的坑

初识Springcloud Alibaba nacos遇到的坑

最近下班回到,想着最近两年Springcloud Alibaba巨火,就自己敲一个简单的demo,没想到第一步玩nacos就遇到一些问题,和大家分享一下,希望别的小伙伴遇到了可以避免。

首先下载了nacos官方的文件,然后解压,解压成功之后,很自然的打开startup.cmd,想着应该就能开始学习了,没想到,上来就报错!!!

org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat

在这里插入图片描述

当时就蒙蔽了,是环境问题吗?可是我电脑经常用来写代码,jdk,MysqL,tomcat,maven应该都是没有问题的啊。难道第一次学习还得重新装一套环境?

然后想想应该不至于,所以就去解决问题。。。

看见报错信息,tomcat无法打开?第一想法就是是不是我tomcat端口被占用了,毕竟自己有的项目测试就是8080,看了一下,发现并没有,看来不是这个问题。

然后继续找错误,把错误拉到最下面,出来了这个错误
Caused by: java.lang.RuntimeException: java.lang.RuntimeException: [db-load-error]load jdbc.properties error

在这里插入图片描述

这就出来问题了,db-load-error数据库加载错误,难道还要导入数据库?就在nacos下载文件里面找,果然,在conf文件夹里面找到了nacos-MysqL.sql文件
那行,先导入本地看看,新建一个nacos数据库,然后导入nacos-MysqL.sql
既然有数据库文件,应该也有相关配置把,在application.properties中找到了

在这里插入图片描述

找到了数据库配置,将账号密码改成本地数据库的账号密码数据库名字创建的时候就叫nacos,所以就不用改了,然后重新启动。

然后又报错

在这里插入图片描述

我吐了啊,咋回事? 没法,去瞅瞅日志文件把。。。

然后日志文件第一行就是 java.lang.IllegalArgumentException: db.num is null

在这里插入图片描述


db.num是空?然后去配置文件里面瞅一眼,果然,配置文件里有个

在这里插入图片描述


db.num本来是注释掉了,咱们给打开,然后看了一下,应该没有和数据库相关的配置了,保存,重新运行。。。

然后 Caused by: java.net.UnkNownHostException: jmenv.tbsite.net

在这里插入图片描述


我都吐血了,啥玩意啊?是我下载的版本问题吗?怎么这么多错误
然后看了日志,这次没有拿到有用的东西。难道解决不了了?
我又认真的看了一遍启动过程,发现了一个问题
在启动刚开始,第一行出现了 “nacos is starting with cluster”,nacos集群开始启动。

在这里插入图片描述


不对把?我就下载了一个单机,不应该是集群启动啊。然后去配置文件里面找启动相关,看有没有把集群改成单机的配置,很遗憾,没找到。
想到这里,我已经要放弃了,不准备学了,真的是完全劝退萌新啊。
但仔细想了一下,配置问题如果不是在配置文件中,那就应该是在程序中,然后我打开了startup.cmd,

在这里插入图片描述

真的是没想到,在这里找到了!!!
然后把最上边的 set MODE=“cluster” 改成 set MODE=“standalone”,保存。

果然,启动的时候提示便变成了单机模式。而且,没有再报错,启动成功了!!!

在这里插入图片描述


然后访问8848端口,也成功进入了系统。

在这里插入图片描述

总结一下

  1. 首先导入数据库
    在初次使用nacos时,第一步应该先导入conf/nacos-MysqL.sql这个sql文件,在本地数据库创建nacos数据库,然后导入数据库文件
  2. 修改配置文件
    在conf/application.properties配置文件中,找到数据库相关的配置,就是下面这两段,把原先的注释去掉,改成本地的数据库账号密码
### Count of DB:
db.num=1

### Connect URL of DB:
db.url.0=jdbc:MysqL://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=root

3.## 更改启动模式
使用记事本打开 bin/startup.cmd 启动文件,将其中的 set MODE=“cluster” 改成 set MODE=“standalone”。

做完这些,我的就正常启动了,如果你的还是有问题,可以去log下查看一下日志。
如果仍有别的不能解决的问题出现,希望大家共同交流。避免踩坑!!!!!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐