{"id":56,"date":"2021-01-13T09:12:17","date_gmt":"2021-01-13T01:12:17","guid":{"rendered":"http:\/\/mengstudy.com\/?p=56"},"modified":"2021-01-15T08:59:11","modified_gmt":"2021-01-15T00:59:11","slug":"springboot%e9%a1%b9%e7%9b%ae%e8%ae%bf%e9%97%aemysql%e6%97%b6%e5%8c%ba%e9%94%99%e8%af%af%e9%97%ae%e9%a2%98","status":"publish","type":"post","link":"https:\/\/fugary.com\/?p=56","title":{"rendered":"SpringBoot\u9879\u76ee\u8bbf\u95eeMySQL\u65f6\u533a\u9519\u8bef\u95ee\u9898"},"content":{"rendered":"<h2>SpringBoot\u9879\u76ee\u8bbf\u95eeMySQL\u65f6\u533a\u9519\u8bef\u95ee\u9898<\/h2>\n<h3>\u9519\u8bef\u4fe1\u606f<\/h3>\n<pre><code class=\"language-java\">Unable to obtain connection from database: The server time zone value &#039;\ufffd\u0439\ufffd\ufffd\ufffd\u05fc\u02b1\ufffd\ufffd&#039; is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the &#039;serverTimezone&#039; configuration property) to use a more specifc time zone value if you want to utilize time zone support.\n------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\nSQL State  : 01S00\nError Code : 0\nMessage    : The server time zone value &#039;\ufffd\u0439\ufffd\ufffd\ufffd\u05fc\u02b1\ufffd\ufffd&#039; is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the &#039;serverTimezone&#039; configuration property) to use a more specifc time zone value if you want to utilize time zone support.\n\n    at org.flywaydb.core.internal.jdbc.JdbcUtils.openConnection(JdbcUtils.java:60) ~[flyway-core-6.0.8.jar:na]\n    at org.flywaydb.core.internal.jdbc.JdbcConnectionFactory.&lt;init&gt;(JdbcConnectionFactory.java:80) ~[flyway-core-6.0.8.jar:na]\n    at org.flywaydb.core.Flyway.execute(Flyway.java:438) ~[flyway-core-6.0.8.jar:na]\n    at org.flywaydb.core.Flyway.migrate(Flyway.java:149) ~[flyway-core-6.0.8.jar:na]\n    at org.springframework.boot.autoconfigure.flyway.FlywayMigrationInitializer.afterPropertiesSet(FlywayMigrationInitializer.java:65) ~[spring-boot-autoconfigure-2.2.5.RELEASE.jar:2.2.5.RELEASE]\n    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1855) ~[spring-beans-5.2.4.RELEASE.jar:5.2.4.RELEASE]\n    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1792) ~[spring-beans-5.2.4.RELEASE.jar:5.2.4.RELEASE]\n    ... 23 common frames omitted\nCaused by: java.sql.SQLException: The server time zone value &#039;\ufffd\u0439\ufffd\ufffd\ufffd\u05fc\u02b1\ufffd\ufffd&#039; is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the &#039;serverTimezone&#039; configuration property) to use a more specifc time zone value if you want to utilize time zone support.\n    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:63) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:73) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:76) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.jdbc.ConnectionImpl.&lt;init&gt;(ConnectionImpl.java:456) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:197) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138) ~[HikariCP-3.4.2.jar:na]\n    at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:354) ~[HikariCP-3.4.2.jar:na]\n    at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202) ~[HikariCP-3.4.2.jar:na]\n    at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:473) ~[HikariCP-3.4.2.jar:na]\n    at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:554) ~[HikariCP-3.4.2.jar:na]\n    at com.zaxxer.hikari.pool.HikariPool.&lt;init&gt;(HikariPool.java:115) ~[HikariCP-3.4.2.jar:na]\n    at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112) ~[HikariCP-3.4.2.jar:na]\n    at org.flywaydb.core.internal.jdbc.JdbcUtils.openConnection(JdbcUtils.java:56) ~[flyway-core-6.0.8.jar:na]\n    ... 29 common frames omitted\nCaused by: com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value &#039;\ufffd\u0439\ufffd\ufffd\ufffd\u05fc\u02b1\ufffd\ufffd&#039; is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the &#039;serverTimezone&#039; configuration property) to use a more specifc time zone value if you want to utilize time zone support.\n    at java.base\/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:na]\n    at java.base\/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:na]\n    at java.base\/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:na]\n    at java.base\/java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[na:na]\n    at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:85) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.util.TimeUtil.getCanonicalTimezone(TimeUtil.java:132) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.protocol.a.NativeProtocol.configureTimezone(NativeProtocol.java:2118) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.protocol.a.NativeProtocol.initServerSession(NativeProtocol.java:2142) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.jdbc.ConnectionImpl.initializePropsFromServer(ConnectionImpl.java:1310) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:967) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:826) ~[mysql-connector-java-8.0.19.jar:8.0.19]\n    ... 40 common frames omitted<\/code><\/pre>\n<h3>\u539f\u56e0\u5206\u6790<\/h3>\n<p>\u6211\u4eec\u53ef\u4ee5\u7528MySQL\u7684\u547d\u4ee4\u67e5\u770b\u76ee\u524d\u670d\u52a1\u5668\u7684<code>time_zone<\/code>\u914d\u7f6e\uff1a<\/p>\n<pre><code class=\"language-sql\">show global variables like &#039;%time_zone%&#039;;\nshow variables like &#039;%time_zone%&#039;;<\/code><\/pre>\n<table>\n<thead>\n<tr>\n<th>Variable_name<\/th>\n<th>Value<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>system_time_zone<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>time_zone<\/td>\n<td>SYSTEM<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u9ed8\u8ba4\u60c5\u51b5\u4e0bsystem_time_zone\u6ca1\u6709\u914d\u7f6e\uff0c\u4f46\u662ftime_zone\u5374\u6307\u5411\u5b83\uff0c\u53ef\u80fd\u7cfb\u7edf\u4f1a\u6709\u4e2a\u9ed8\u8ba4\u7684\u65f6\u533a\u503c\uff0c\u770b\u9519\u8bef\u4fe1\u606f\u662f\u4e71\u7801\uff0c\u5e76\u4e0d\u6e05\u695a\u5230\u5e95\u662f\u4ec0\u4e48\u65f6\u533a\uff0c\u6240\u4ee5\u62a5\u9519\u3002<\/p>\n<h3>\u89e3\u51b3\u65b9\u6cd5<\/h3>\n<p>\u8981\u4e48\u4fee\u6539MySQL\u7684\u8fde\u63a5\u5b57\u7b26\u4e32\uff0c\u8981\u4e48\u4fee\u6539MySQL\u7684\u9ed8\u8ba4\u914d\u7f6e\u6307\u5b9a\u5b9a\u4e00\u4e2a\u65f6\u533a\uff0c\u4e0b\u9762\u7684\u51e0\u79cd\u65b9\u5f0f\u4efb\u9009\u4e00\u79cd\u5373\u53ef\u3002<\/p>\n<p><strong>\u6ce8\u610f\uff1a\u914d\u7f6e\u7684\u65f6\u533a\u4e0d\u4e00\u6837\u4f1a\u5f71\u54cd\u63d2\u5165\u7684\u65e5\u671f\u6570\u636e\u7684\u503c<\/strong><\/p>\n<ol>\n<li>\n<p>\u4fee\u6539MySQL\u8fde\u63a5\u5b57\u7b26\u4e32\uff0c\u6dfb\u52a0serverTimezone=xxx\u6765\u5b9e\u73b0\u3002<\/p>\n<ul>\n<li>\u914d\u7f6e\u8fde\u63a5<code>serverTimezone=UTC<\/code>\u6216\u8005\u914d\u7f6e\uff1a<code>serverTimezone=Asia\/Shanghai<\/code>\u6216\u8005\u914d\u7f6e\uff1a<code>serverTimezone=GMT%2B8<\/code><\/li>\n<li>\u8fde\u63a5\u5b57\u7b26\u4e32\uff1ajdbc:mysql:\/\/localhost:3306\/user_db?useUnicode=true&amp;characterEncoding=UTF-8&amp;serverTimezone=Asia\/Shanghai<\/li>\n<\/ul>\n<\/li>\n<li>\n<p>\u4fee\u6539MySQL\u9ed8\u8ba4\u914d\u7f6e\u6587\u4ef6<\/p>\n<ul>\n<li>\u4fee\u6539MySQL\u7684\u914d\u7f6e\u6587\u4ef6\uff0cWindows\u4e0b\u8def\u5f84\uff1aC:\\ProgramData\\MySQL\\MySQL Server 8.0\\my.ini<\/li>\n<li>\u5728<code>[mysqld]<\/code>\u533a\u57df\u6dfb\u52a0\uff1a<code>default-time-zone=&quot;+8:00&quot;<\/code><\/li>\n<\/ul>\n<\/li>\n<li>\n<p>\u7528\u547d\u4ee4\u6539MySQL\u914d\u7f6e\uff0c\u683c\u5f0f\uff1a<code>set global time_zone = timezone<\/code><\/p>\n<pre><code class=\"language-sql\">set global time_zone='+8:00'\nset global time_zone='Asia\/Shanghai'<\/code><\/pre>\n<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>SpringBoot\u9879\u76ee\u8bbf\u95eeMySQL\u65f6\u533a\u9519\u8bef\u95ee\u9898 \u9519\u8bef\u4fe1\u606f Unable to obtain connect [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[5],"tags":[12,11],"_links":{"self":[{"href":"https:\/\/fugary.com\/index.php?rest_route=\/wp\/v2\/posts\/56"}],"collection":[{"href":"https:\/\/fugary.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fugary.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fugary.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fugary.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=56"}],"version-history":[{"count":3,"href":"https:\/\/fugary.com\/index.php?rest_route=\/wp\/v2\/posts\/56\/revisions"}],"predecessor-version":[{"id":101,"href":"https:\/\/fugary.com\/index.php?rest_route=\/wp\/v2\/posts\/56\/revisions\/101"}],"wp:attachment":[{"href":"https:\/\/fugary.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=56"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fugary.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=56"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fugary.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=56"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}