Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java MySQL连接器错误“;服务器时区值“中欧时间”;_Java_Mysql_Jdbc - Fatal编程技术网

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

Java MySQL连接器错误“;服务器时区值“中欧时间”;,java,mysql,jdbc,Java,Mysql,Jdbc,我的问题 MySQL连接器“服务器时区值中欧时间”无法识别或表示多个时区 项目 小型web项目,包括: JavaEE、Tomcat8.5、MySQL、Maven 我的尝试 Maven->将MySQL连接器表单6.x更改为5.1.39(无更改) 编辑context.xml URL更改 context.xml中的连接 URL=“jdbc:mysql://127.0.0.1:3306/rk_tu_lager?useLegacyDatetimeCode=false;serverTimezone=CE

我的问题

MySQL连接器“服务器时区值中欧时间”无法识别或表示多个时区

项目

小型web项目,包括: JavaEE、Tomcat8.5、MySQL、Maven

我的尝试

  • Maven->将MySQL连接器表单6.x更改为5.1.39(无更改)
  • 编辑context.xml URL更改
context.xml中的连接

URL=“jdbc:mysql://127.0.0.1:3306/rk_tu_lager?useLegacyDatetimeCode=false;serverTimezone=CEST;useSSL=false;

错误:

原因: com.mysql.cj.core.exceptions.InvalidConnectionAttributeException: 无法识别服务器时区值“Miteleurop?ische Sommerzeit” 或表示多个时区。您必须配置 服务器或JDBC驱动程序(通过serverTimezone配置属性) 若要使用时区,请使用更具体的时区值 支持


谢谢马克·罗特维尔和戈德·汤普森

我在一个XML文件中建立了连接,与
&;
Europe/Amsterdam
的连接终于起作用了

url=“jdbc:mysql://127.0.0.1:3306/rk_tu_lager?useLegacyDatetimeCode=false&服务器时区=欧洲/阿姆斯特丹&;useSSL=false“

谢谢,您很好

如果您使用的是MySQL客户端,例如DBeaver,您应该更改连接的设置。因此,在连接上单击鼠标右键,然后单击编辑连接。然后,编辑位于“连接设置”下的驱动程序属性,转到设置底部,单击“添加新属性”,添加serverTimezone作为新的属性名称,并输入值,例如Europe/Warsaw。
仅此而已。

我在将mysql服务器升级到SQL server 8.0(MYSQL80)时遇到了这个问题

解决这个问题的最简单方法就是在MYSQL工作台中编写以下命令-

  SET GLOBAL time_zone = '+5:30'
时区后的值将等于您所在时区的GMT+/-差值。上述示例适用于印度(GMT+5:30)。
它将解决问题。

找到您所在的时区,并将+00:00替换为您所在的时区

SET@@global.time_zone='+00:00';
设置@@session.time_zone='+00:00';
然后检查是否设置了这些值:

选择@global.time_zone、@session.time_zone;

CEST是此属性的有效值吗?如果改为使用(例如-
Europe/Amsterdam
),会发生什么情况?如果“Europe/Amsterdam”没有更改,则会出现新错误:java.sql.SQLException:无法创建PoolableConnectionFactory(没有“Europe/Amsterdam”的时区映射条目;有趣的是,我认为您需要等待对MySQL有更多日常经验的人。
'Europe/Amsterdam;
中的尾随分号看起来可疑。尝试用
&
而不是
分隔连接字符串参数对。DataG中也有同样的问题rip并可以使用类似的设置值解决此问题。将其设置为
serverTimezone=Europe/Berlin
可以消除连接上的警告。