起因:
最近在学spring cloud,学到了nacos,本来想用我虚拟机上的linux的docker来启动nacos的,可是一启动,我的笔记本的内存瞬间到了80%,这还是没启动微服务的情况下。于是我就用windows来启动nacos。
过程:
启动的时候直接失败,原因是没有配置数据库信息。于是我就配置了数据库的信息:
新建一个数据库,运行上图中所指的nacos-mysql.sql:
然后在application.properties中修改:
把我指的全部放出来(原本是注释掉的),然后user和password就写自己数据库的用户名和密码,图中的sb是我一个用户名,我一般不用root。
可是,接下来还是启动失败:
报错了好多,我就不继续截了。
于是我上网查找怎么解决,终于让我找到了:
来源:https://github.com/alibaba/nacos/issues/3529
我使用了单机启动后,对nacos操作的数据都存到了数据库中了:
但是,我还是很奇怪为什么直接启动就报错了,然后又找了一段时间,终于解决了,原因是在conf目录下的那个clustert.conf的问题,下载下来以后只有cluster.conf.example,却没有cluster.conf,于是我就复制了一份cluster.conf.example,然后去掉后面的.example,什么都不做,直接启动,终于成功了:
直接启动:
登陆网页(这些数据都是数据库里存着的,之前单机模式下保存的数据):
参考:
来源:https://github.com/alibaba/nacos/issues/2902
感谢那些大佬找到的解决方法。
接下来还是要用虚拟机来启动nacos,不知道我的辣鸡8G内存的电脑撑不撑得住。。。
补充
花了一个下午和半个晚上终于把nacos集群(3个)和nginx跑起来了,3个nacos都是连接的mysql数据库。同时还启动了一个微服务通过nginx开放的端口注册成功了。就是内存快爆了,毕竟我是开虚拟机来弄的。
然后我弄完这个以后,回到主机上重新开启主机的mysql(nacos集群连的mysql是虚拟机docker上的mysql,而nacos和nginx不是用docker启动的),再重启主机上的nacos服务的时候,忽然出现数据库连不上的错误了,最后在网上查找解决方法,要在连接数据库的时候加上
allowPublicKeyRetrieval=true
来源:https://blog.csdn.net/u013360850/article/details/80373604
最后再补充:我是跟着b站的视频学的:
视频来源:https://www.bilibili.com/video/BV18E411x7eT?p=113