mysql8 idea啓動tomcat報錯:java.sql.SQLException: Could not retrieve transation read-only status server

主要原因是 pom中用的mysql connect java 還是老版本的,沒有適應新版本mysql8

我用的是ali的maven倉庫,搜索mysql8


可以看到有mysql-connector-java-8.0.11.jar

但是我本地的pom卻還是5.1.34

太低了,所以升級一下。

更改pom中mysql jar爲

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

</dependency>

之後發現會報新錯誤

mysql java.sql.SQLException: The server time zone value‘'???ú±ê×' is unrecognized or represents...

這是由於mysql8中數據庫和系統時區差異造成的

解決辦法,更改jdbcurl增加

&serverTimezone=GMT%2B8

jdbc.url_dev=jdbc:mysql://127.0.0.1:3306/umbrelladatabase?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8