我有这个错误:
“无法识别服务器时区值'Osteropeeische Zeit',或表示多个时区。如果要利用时区支持,必须配置服务器或JDBC驱动程序(通过serverTimezone配置属性)以使用更具体的时区值。”
使用的操作系统是Win 10,但它是作为德语版本安装的。我相信这就是问题的根源。我已将显示语言设置为英语,但没有帮助。
谢谢大家!
MySQL使用zoneinfo名称——基于政治分区——来命名时区。这些看起来像< code >“欧洲/赫尔辛基”或< code >“欧洲/雅典”而不是通用名称。为什么?zoneinfo试图处理夏令时和标准时间,这些规则取决于所述的政治分区。
所有这些zoneinfo都内置在UNIX衍生的操作系统中,因此在Linux上运行的MySQL服务器透明地使用这些时区。Zoneinfo没有内置在Windows中,因此如果您的MySQL服务器在那里运行,您必须使用此过程自行设置服务器时区查找表。
您可以通过多种方式设置MySQL默认服务器时区。查找如何执行这些操作。这是一些方法。
您也可以在 Java 程序中进行设置。查看如何做到这一点。
MySQL的内部TIMESTAMP
数据类型,以及像NOW()
这样的函数的值,本质上是UTC的。但是MySQL将它们从UTC转换为您选择的时区,并在存储时将它们转换为UTC。
因此,在许多应用程序(例如WordPress)中,时区设置是用户的首选项。