MACOS / MySQL / SQL Developer连接错误-时区问题

时间:2018-09-05 11:20:52

标签: mysql macos-sierra

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

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

连接名称:测试 用户名:root 密码:xxxxx

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

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

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

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

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

3 个答案:

答案 0 :(得分:0)

通过在下面提到的文件中添加以下条目,解决了该问题。在新的mysql数据库安装中,该文件将不存在,因此请创建该文件,以便您将创建具有root特权的新纯文本文件。启动MySQL服务器时,每次都会读取此文件。下面指定的值是全局参数。

/etc/my.cnf

[mysqld]
default-time-zone='+10:00'

应输入单引号,而不要粘贴复制。

然后重新启动MySQL服务器。

答案 1 :(得分:0)

支持Nitin Puthran的回答。

如果您有mysql的Homebrew安装,则my.cnf在Cellar的mySql目录中(不是etc)。对于我的版本是:

/usr/local/Cellar/mysql@5.6/5.6.41/my.cnf

[mysqld]
default-time-zone='+10:00'

然后重新启动mySql服务器。

答案 2 :(得分:0)

我在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为我工作。否则,像上述答案这样的偏移量应该起作用。