SpringBoot启动出现java.sql.SQLNonTransientConnectionException: CLIENT_PLUGIN_AUTH is required

今天刚学SpringBoot,然后搭建了一个SpringBoot+MyBatis的环境,但是在运行的时候出现了

java.sql.SQLNonTransientConnectionException: CLIENT_PLUGIN_AUTH is required
这个错误

百度了很多,都说是jdbc数据库驱动版本太高,降低就好了,后来自己排查,发现问题确实出在版本,下面是我这边问题的解决办法,不一定能保证都能解决大家相同的异常,同时写下来记录一下自己的学习过程。

首先打开pom.xml,找到mysql连接驱动的依赖

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <scope>runtime</scope>
</dependency>
我的项目依赖是在创建项目时选择的依赖,然后在项目创建后由IDEA自动添加的依赖,如上代码就是自动添加的依赖,不过自动添加的依赖是没有版本号<version></version>的,可能是默认版本比较高,所以我这边一直出错,连接不了。然后我添加上版本号,变成如下

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.37</version>
    <scope>runtime</scope>
</dependency>
保存。但是这里问题还没有解决,返回到application.properties/application.yml文件中,发现spring.datasource.driver-class-name后的驱动名变成了红色,报错,解决办法:右键pom.xml——>maven——>Download Source,等待下载完毕,问题解决。

关于这边的spring.datasource.driver-class-name配置还有要注意的一点,在mysql5中,jdbc连接mysql5是com.mysql.jdbc.Driver,而mysql6以及以上是com.mysql.cj.jdbc.Driver,并且在url之后要指定时区。
 

发布了36 篇原创文章 · 获赞 0 · 访问量 941

猜你喜欢

转载自blog.csdn.net/ityw520/article/details/104118149