mysql timezone_timezone - 如何设置MySQL的时区?

请记住,“国家/地区”有时不起作用......这个问题不是操作系统,MySQL版本和硬件依赖 - 自从FreeBSD 4和Slackware Linux在2003年到今天我都遇到了它。 MySQL从版本3到最新的源干线。 它是ODD,但它确实发生了。 例如:

root@Ubuntu# ls -la /usr/share/zoneinfo/US

total 8

drwxr-xr-x 2 root root 4096 Apr 10 2013 .

drwxr-xr-x 22 root root 4096 Apr 10 2013 ..

lrwxrwxrwx 1 root root 18 Jul 8 22:33 Alaska -> ../SystemV/YST9YDT

lrwxrwxrwx 1 root root 21 Jul 8 22:33 Aleutian -> ../posix/America/Adak

lrwxrwxrwx 1 root root 15 Jul 8 22:33 Arizona -> ../SystemV/MST7

lrwxrwxrwx 1 root root 18 Jul 8 22:33 Central -> ../SystemV/CST6CDT

lrwxrwxrwx 1 root root 18 Jul 8 22:33 Eastern -> ../SystemV/EST5EDT

lrwxrwxrwx 1 root root 37 Jul 8 22:33 East-Indiana -> ../posix/America/Indiana/Indianapolis

lrwxrwxrwx 1 root root 19 Jul 8 22:33 Hawaii -> ../Pacific/Honolulu

lrwxrwxrwx 1 root root 24 Jul 8 22:33 Indiana-Starke -> ../posix/America/Knox_IN

lrwxrwxrwx 1 root root 24 Jul 8 22:33 Michigan -> ../posix/America/Detroit

lrwxrwxrwx 1 root root 18 Jul 8 22:33 Mountain -> ../SystemV/MST7MDT

lrwxrwxrwx 1 root root 18 Jul 8 22:33 Pacific -> ../SystemV/PST8PDT

lrwxrwxrwx 1 root root 18 Jul 8 22:33 Pacific-New -> ../SystemV/PST8PDT

lrwxrwxrwx 1 root root 20 Jul 8 22:33 Samoa -> ../Pacific/Pago_Pago

root@Ubuntu#

这样的声明应该起作用:

SET time_zone='US/Eastern';

但是你有这个问题:

错误代码:1298。未知或不正确的时区:'EUS / Eastern'

查看区域信息目录中的子文件夹,查看符号链接的ACTUAL文件名,在本例中为EST5EDT。 然后尝试这个语句:

SET time_zone='EST5EDT';

它实际上正如它应该的那样工作! :)记住这个伎俩; 我还没有看到它在MySQL手册和官方文档中记录。 但阅读相应的文档是必须做的事情:MySQL 5.5时区官方文档 - 并且不要忘记将时区数据加载到服务器中(就像root用户一样!):

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

特技第一 - 它必须完全在MySQL root用户下完成。 它甚至可以从完全访问MySQL数据库的用户那里失败或产生非工作结果 - 我自己看到了这个故障。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值