首页  >  文章  >  数据库  >  如何解决 MySQL Connector 中的“服务器时区值中欧时间”错误?

如何解决 MySQL Connector 中的“服务器时区值中欧时间”错误?

Linda Hamilton
Linda Hamilton原创
2024-10-23 14:47:52769浏览

How to Resolve

MySQL 连接器错误:“服务器时区值中欧时间”

问题:

尝试使用 MySQL 连接器连接到 MySQL 数据库时,出现错误,指出服务器时区值“中欧时间”无法识别或不明确。

项目上下文:

这个问题出现在一个使用 JavaEE、Tomcat 8.5、MySQL 和 Maven 的小型 Web 项目中。

尝试的解决方案:

  • 降级MySQL 连接器版本从 6.x 到 5.1.39
  • 修改 context.xml 中的数据库连接 URL

原始连接 URL:

<code class="xml">URL="jdbc: mysql://127.0.0.1:3306/rk_tu_lager?useLegacyDatetimeCode=false;serverTimezone=CEST;useSSL=false;</code>

错误消息:

Caused by:
  com.mysql.cj.core.exceptions.InvalidConnectionAttributeException:  The server time zone value 'Mitteleurop?ische Sommerzeit' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.

解决方案:

解决方案涉及修改 context.xml 中的数据库连接 URL 以包含正确的时区值和编码:

<code class="xml">url="jdbc:mysql://127.0.0.1:3306/rk_tu_lager?useLegacyDatetimeCode=false&amp;serverTimezone=Europe/Amsterdam&amp;useSSL=false"</code>

注意:

  • 将“欧洲/阿姆斯特丹”替换为适合您所在位置的时区。
  • 需要“&”编码来转义 URL 字符串中的 & 字符。

以上是如何解决 MySQL Connector 中的“服务器时区值中欧时间”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn