随笔 - 15  文章 - 1  评论 - 2 

Nacos1.2.X版本完美解决mysql8.0不兼容问题的解决方案 (Liunx版本解决方案类同)

 

Nacos1.2.X版本完美解决mysql8.0不兼容问题

问题描述:

  根据Spring Cloud Alibaba中的 Nacos 注册与配置中心支持的MySql版本是5.7.X版本,Nacos的默认(自带)数据库是Apache Derby数据库,未来实现数据一致性,需要从derby切换到Mysql数据库,

但由于我们使用的MySql版本是mysql8.0版本及以上版本,Nacos启动时出现mysql8.0不兼容问题(获取Mysql驱动包出错)。

 

 

 

解决:

首先查看官网版本,我发现了一个不可告人的错误信息。

英文版本:

 

 

 

中文翻译:

 

 

 后续版本均未更新:

 

 

 

#2042 mysql8.0 support error 这个是已经解决了吗? 但是默认情况下还是继续报错,表示连接不上;

 

然后通过#2042发现了一个简单的办法可以解决(在nacos安装目录下添加对应的mysql驱动包)

 

因为nocos1.2.X版本中mysql默认版本为5.1.34(如下图),所以通过指定相应的版本即可解决。

 

 

我们需要做的仅仅是在nacos下建立目录放jar包即可,其他事情nacos1.2已经帮我们完成了(在nacos目录下创建 plugins/mysql 目录 然后把对应的驱动包jar放入mysql目录中)

 

 

 

 

然后点击启动,还有一个配置问题:

 

 

 

修改application.properties:在nacos\nacos-server-1.2.X\nacos\conf目录下 (X表示对应的版本号)

spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://localhost:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=123456
必须加:
serverTimezone=UTC

 

就和以前配置数据源一样,必须要有红框部分,不然报错

启动:startup.cmd

 Liunx版本同上修改

 

 

 

 

 数据也可以存储到mysql数据库中

总结:

  建议Alibaba能够在最新的Nacos版本中修复此bug。

 

 

    

 

 

 

 

 

 

 

 

 

 

 

 

 

posted on 2020-05-20 15:28  小宁526  阅读(736)  评论(0编辑  收藏