首页 > 解决方案 > MACOS / MySQL / SQL Developer 连接错误 - 时区问题

问题描述

在我的 Mac PC 上,我已经安装了 MySQL 和 SQL Developer 以及 MySQL 的官方 JDBC 驱动程序 MySQL Connector/J,因此 MySQL 选项卡出现在 SQL Developer 的连接窗口中。

在 SQL Developer 连接窗口中,我正在填写以下详细信息

连接名称:test 用户名:root 密码:xxxxx

在此连接窗口的 MySql 选项卡中,主机名和端口会自动填充值 localhost 和 3306。

有一个名为“选择数据库”的按钮,当我单击此按钮时,我收到以下红色错误消息

“状态:失败 - 服务器时区值 'AEST' 无法识别或代表多个时区。如果需要,您必须配置服务器或 JDBC 驱动程序(通过 serverTimezone 配置属性)以使用更具体的时区值利用时区支持”

如何解决此问题,以便我可以从 SQL 开发人员连接到 MySql 数据库?

PS:我目前在澳大利亚悉尼。

标签: mysqlmacos-sierra

解决方案


我在 Mojave (10.14.6) 上安装了带有本机包的 MySQL 8。据我所知,没有 my.cnf 文件这样的东西。我无法让 MySQL 识别任何 my.cnf 文件,即使在系统偏好设置中的 MySQL 设置小程序的配置选项卡上指定一个文件也是如此。唯一对我有用的是编辑/Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist和添加<string>--default-time-zone=America/Denver</string>到该Program Arguments部分。重新启动 Mac 或使用上述小程序重新启动服务器。

我想只有当您将时区数据加载到 MySQL 时,才能使用城市名称。mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql为我工作。否则,像上述答案这样的偏移量应该可以工作。


推荐阅读