安装nacos启动报错以及版本对应关系问题解决

最近开始打算学习一波springcloud-alibaba,于是在github官网上下载nacos的安装包,启动发现报错。

报错信息:Unable to start embedded Tomcat
无法加载内置的tomcat。

在网上找了些解决办法,说是jdk配置不正确,版本低,或者是环境变量没有配置JAVA_HOME。
我看了下我的环境变量配置,是没问题的,JDK版本1.8_077. 问题应该也不大。

我找了下nacos的目录结构,发现有几个文件夹,
bin里面是启动和关闭nacos的
conf很明显是配置文件
logs是日志信息
data里是空的
target里有一个springboot的jar包,很明显是打包后的nacos项目。

于是我打开日志看了下报错信息,nacos.log
最下面一行发现了一个敏感字眼:Caused by: java.lang.RuntimeException: [db-load-error]load jdbc.properties error

难怪是数据库配置的问题?
于是打开conf文件夹,看到有一个nacos-mysql.sql
看来是要导入数据库脚本,于是在本地数据库创建了一个名为nacos的数据库,
并执行这个sql脚本,生成了一些表。

有库有表肯定要改配置。
于是用编辑器打开application.properties
看到有配置db的地方,于是改了改。

 

 

 

保存后。
再次进入bin目录,双击startbat.cmd运行。

发现依然报错。

 

 


Caused by: java.net.UnknownHostException: jmenv.tbsite.net
报错:不知名的主机异常。

这里我重新改了下配置文件,也没有什么作用。

关键一点,启动的时候,我注意到一个信息,
nacos一直在以集群模式启动,cluster list is []

我在想问题会不会出在这里,因为我是单击运行的,并没有配置nacos集群。

于是我用编辑器打开bin目录下的startup.cmd
看到一个关键信息

 

 

 

这里是可以配置单击模式启动的,于是尝试着改启动配置,以单击模式启动

 

 

 

保存后退出。再次双击启动文件startup.cmd。

这次正常启动了。

在浏览器打开localhost:8848/nacos/index.html

正常访问nacos配置中心。 

**

小结:
**
1、先把数据库脚本导入本地数据库,数据库名要与application.properties里的数据库配置一致,一般都叫nacos库,当然名字自己随便取,对应上就行了。
2、修改conf下的配置文件application.properties,把db等配置改改。
3、关键:如果是单击启动的话,修改startup.bat,把启动模式改成standalone 单击启动。
————————————————
版权声明:本文为CSDN博主「honeyCloud1988」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42982636/article/details/108221299

 

版本对应关系:

最近看消息,nacos已经推出2.0,性能比1.x版本要强十倍。暂时还是选择1.x版本作为我研究的对象,后续再看2.0的新特性。

现在nacos1.x的最新Release版本是1.4.1.

对于读者的项目,springCloud的版本都不一致。那么我们如何寻找对应的nacos版本呢。

还是那句话,不懂得就看官网,再串联起来。

nacos服务端版本

第一步,先看springCloud版本
springCloud官网 https://spring.io/projects/spring-cloud

 

 

 

笔者因为在本地搭建的程序,那么我会选择相对较新的Release版本。Hoxton.SR10。其他小伙伴,根据自己版本选则,后面步骤选择版本是先根据这个来定的。

springCloud的版本,是对一套微服务组件的组合。我们点进去Hoxton。

 

 

 

 

第二步 查找Spring Cloud Alibaba Version 对应版本号
我们都知道,nacos是阿里开源的。也是springCloud alibaba的其中一个组件。

打开Spring Cloud Alibaba Version版本说明wiki 版本说明wiki

 

 

 

第一步,我选择的是Hoxton.SR10.找不着,那么就选择最近的2.2.5.RELEASE

 

第三步 查找Nacos版本
查找nacos版本,是在同一个wiki页面上

 

 

 

现在,我们就找到nacos的服务端版本了。是1.4.1。同事也是最新的稳定版本。

 

nacos客户端版本
nacos提供的客户端,目前只有Java语言版本,是一个java sdk。sdk链接说明

<dependency>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-client</artifactId>
<version>${version}</version>
</dependency>
融入springcloud体系,将nacos-client进行包装,形成一个springcloud扩展的插件。

查看官网页面nacos springcloud快速开始

springCloud版本Hoxton.SR10,对应的springboot版本是2.2.x, 2.3.x (Starting with SR5)

那么nacos客户端版本,应该选择 2.1.x.RELEASE ,点进去,maven版本查找

发现最新的版本有2.2.x。那么我们知道,官网的描述过时了,就选择2.2.5.RELEASE版本。

读者,都明白整个过程了吧。
————————————————
版权声明:本文为CSDN博主「chudaxiakkk」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/chudaxiakkk/article/details/115276217

posted @ 2021-10-05 16:54  背着泰山找黄河  阅读(3591)  评论(0编辑  收藏  举报