MySQL版本引起的錯誤

各位看官可以關注博主個人博客,瞭解更多信息。
作者:Surpasser
鏈接地址:https://surpass.org.cn

前言

接上一篇帖子,博主在CentOS上安裝了最新版的MySQL容器(版本爲8.0.19),在使用本地springBoot項目連接,啓動項目後操作登錄系統時報錯。

問題

請看代碼:

com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

這是由於MySQL8.0以上版本的驅動連接與5.0版本有所不同,下面是鏈接配置

jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/sys_test?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC&zeroDateTimeBehavior=CONVERT_TO_NULL
jdbc.username=root
jdbc.password=root

注:serverTimezone=UTC必須存在否則連接不上,沒有useSSL=false會在啓動時會出現報紅,詢問是否使用SSL進行連接,但不影響使用,true或false都可以,加上這個參數後就會消失。

這裏列出驅動的差別:

##版本8.0.19驅動
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
##版本5.6 目前項目中用的
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

修正結果

添加maven座標

<dependency>
	<groupId>mysql</groupId>
	<artifactId>mysql-connector-java</artifactId>
	<version>8.0.16</version>
</dependency>

使用版本驅動

##版本8.0.19驅動
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

測試結果

成功登錄

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章