MySql數據庫錯誤整理

  1. MySQLNonTransientConnectionException: Could not create connection to database server.
    因爲mysql8和之前的版本的driver不同了:

driver: com.mysql.cj.jdbc.Driver

  1. WARN: Establishing SSL connection without server’s identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn’t set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to ‘false’. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
    mysql在ssl連接時出了問題:

  2. 在數據庫連接的url中添加useSSL=false;

jdbc:mysql://localhost:3306/test?useSSL=false
如果在雙引號裏面,url後面又有其他參數,可以使用“&”代替“&”,例如:

“jdbc:mysql://localhost:3306/sql_test?useUnicode=true&characterEncoding=UTF-8&useSSL=false”

  1. Authentication plugin ‘caching_sha2_password’ cannot be loaded
    因爲MySQL8.0改變了身份驗證方式,之前版本是mysql_native_password,現在改成了caching_sha2_password。

解決辦法:

修改驗證方式:

ALTER USER root@localhost IDENTIFIED WITH mysql_native_password BY ‘你的密碼’;

因爲本機將localhost改成%,所以我需要執行

ALTER USER root@%IDENTIFIED WITH mysql_native_password BY ‘123456’;

  1. 使用mysql數據庫:java.sql.SQLException: Unknown system variable ‘tx_isolation’

因爲數據庫版本比較高而數據庫驅動版本比較低,使用最新的數據庫驅動

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

同時驅動名跟新爲:com.mysql.cj.jdbc.Driver

參考文章:

https://blog.csdn.net/qq_15003505/article/details/80463174
http://blog.csdn.net/u010429286 https://blog.csdn.net/u010429286/article/details/77750177
https://blog.csdn.net/zixiao217/article/details/80156362
https://blog.csdn.net/always_younger/article/details/80421783

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