OpenSuse - 在 mysql 上设置时区

Posted

技术标签:

【中文标题】OpenSuse - 在 mysql 上设置时区【英文标题】:OpenSuse - Setting the timezone on mysql 【发布时间】:2014-06-12 11:48:41 【问题描述】:

我正在关注'mysql Server Time Zone Support' 在 myqlon OpenSuse 虚拟机上设置默认时区。 我已经阅读了一些关于此的其他问题,但似乎我遗漏了一些东西。

我可以在我的机器上看到区域信息:

linux-gn77:~ # ls -l /usr/share/zoneinfo/
total 280
drwxr-xr-x  2 root root  4096 May  4 10:35 Africa
drwxr-xr-x  6 root root  4096 May  4 10:35 America
drwxr-xr-x  2 root root  4096 May  4 10:35 Antarctica
drwxr-xr-x  2 root root  4096 May  4 10:35 Arctic
drwxr-xr-x  2 root root  4096 May  4 10:35 Asia
drwxr-xr-x  2 root root  4096 May  4 10:35 Atlantic
drwxr-xr-x  2 root root  4096 May  4 10:35 Australia
drwxr-xr-x  2 root root  4096 May  4 10:35 Brazil
-rw-r--r--  2 root root  2102 Oct 28  2013 CET
-rw-r--r--  2 root root  2294 Oct 28  2013 CST6CDT
drwxr-xr-x  2 root root  4096 May  4 10:35 Canada
drwxr-xr-x  2 root root  4096 May  4 10:35 Chile
-rw-r--r--  4 root root  2411 Oct 28  2013 Cuba
-rw-r--r-- 13 root root   118 Oct 28  2013 UTC
-rw-r--r-- 13 root root   118 Oct 28  2013 Universal
-rw-r--r--  4 root root  1464 Oct 28  2013 W-SU
-rw-r--r--  2 root root  1873 Oct 28  2013 WET
-rw-r--r-- 13 root root   118 Oct 28  2013 Zulu

现在我尝试通过发出以下命令来加载时区:

mysql_tzinfo_to_sql /usr/share/zoneinfo/UTC UTC | mysql -u root -p mysql

我收到以下错误:

ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mysql_tzinfo_to_sql: command not found' at line 1

当我检查mysql的版本时,它如下:

mysql> SHOW VARIABLES LIKE "%version%";


+-------------------------+------------------+
| Variable_name           | Value            |
+-------------------------+------------------+
| innodb_version          | 5.5.33           |
| protocol_version        | 10               |
| slave_type_conversions  |                  |
| version                 | 5.5.33           |
| version_comment         | openSUSE package |
| version_compile_machine | i686             |
| version_compile_os      | Linux            |
+-------------------------+------------------+

有人可以建议我如何设置时区吗?

【问题讨论】:

【参考方案1】:

我已经找到了这个问题的问题。

基本上脚本mysql_tzinfo_to_sql不在系统中,是 mysql-community-server-tools,所以首先我们要安装mysql_tzinfo_to_sql。

zypper install mysql-community-server-tools

这会将脚本 mysql_tzinfo_to_sql 放在 /usr/bin/ 文件夹中。

现在您可以使用以下命令加载时区信息:

mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root mysql

【讨论】:

以上是关于OpenSuse - 在 mysql 上设置时区的主要内容,如果未能解决你的问题,请参考以下文章

通过 PhPMyAdmin 在 MySql Server 上设置默认时区

将 MySQL 数据库时区设置为 GMT

如何修改mysql url链接指定时区

带有 MySQL 的 Google Web Toolkit (GWT) Web 应用程序在 Eclipse 中运行良好,但在 openSUSE 服务器上无法运行

如何正确设置mysql时区

如何在 openSUSE 12.2 上设置 PHP 的默认版本