Nacos 配置 MySQL8驱动连接 MySQL8.0.18数据库

MySQL版本:8.0.18

Linux版本:centos7

问题:nacos 无法连接MySQL8,需要从源代码修改MySQL连接驱动

从GitHub上获取Nacos源码

git clone https://github.com/alibaba/nacos.git

修改源代码

进入下载好的nacos目录,进入pom.xml 父文件,在665行修改为8.0.18驱动


<!-- JDBC libs -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <!-- <version>5.1.34</version> -->
    <version>8.0.18</version>
</dependency>

然后修改MysqlHealthCheckProcessor.java 

目录:/usr/local/nacos/naming/src/main/java/com/alibaba/nacos/naming/healthcheck/MysqlHealthCheckProcessor.java

红色是目录。

// import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;原数据在24行
//将其替换
import com.mysql.cj.jdbc.MysqlDataSource;

编译

#进入nacos目录
cd /usr/local/nacos/
#编译命令
mvn -Prelease-nacos clean install -U  
#编译完成,复制target目录nacos-server-1.2.0-SNAPSHOT 到local目录
#进入target
cd /usr/local/nacos/distribution/target/
#复制
cp -a nacos-server-1.2.0-SNAPSHOT /usr/local

初始化mysql数据库

将/usr/local/nacos-server-1.2.0-SNAPSHOT/nacos/conf/ 目录下 nacos-mysql.sql 文件在navacat运行建表

修改nacos配置 添加支持mysql数据源

#进入conf目录 application.properties文件 添加数据 修改 账号 密码 数据库 
vi application.properties
#填入下面内容
spring.datasource.platform=mysql

db.num=1
db.url.0=jdbc:mysql://11.162.196.16:3306/nacos_devtest?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=nacos_devtest
db.password=youdontknow

启动服务器

进入bin 目录,启动

启动命令(standalone代表着单机模式运行,非集群模式):

sh startup.sh -m standalone

关闭服务器

sh shutdown.sh

查看日志是否启动成功

 cat ../logs/start.out
#出现下面日志 启动成功
2019-12-30 14:59:53,489 INFO Nacos started successfully in stand alone mode.

此时大功告成,输入路径访问nacos

我的路径:http://192.168.121.131:8848/nacos

账号密码默认nacos

记得防火墙端口开启

firewall-cmd --zone=public --add-port=8848/tcp --permanent

重新载入

firewall-cmd --reload

查看

firewall-cmd --zone= public --query-port=8848/tcp

 

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值