加载 MySQL 时区表
Posted
技术标签:
【中文标题】加载 MySQL 时区表【英文标题】:Load MySQL timezone tables 【发布时间】:2016-09-18 07:02:04 【问题描述】:尝试,阅读此处的许多相关帖子和 mysql 文档,但找不到解决我的问题的方法。我以 root 身份通过 PUTTY 连接 SSH 并发出以下命令:
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root mysql
我收到以下错误:
Warning: Unable to load '/usr/share/zoneinfo/iso3166.tab' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/zone.tab' as time zone. Skipping it.
知道怎么解决吗?
【问题讨论】:
【参考方案1】:这些不是错误。它们是警告,您可以忽略它们。尽管有这些警告,您的时区表仍应被填充。
问题中使用的实用程序是一个与 MySQL 服务器捆绑在一起的脚本,名为 mysql_tzinfo_to_sql
。它读取您的 Linux(或 FreeBSD、Solaris 或 macOS)系统的时区数据库,并根据它发现的信息创建 SQL 语句,这将在 MySQL 中加载时区表。
警告是关于实用程序在系统上发现的时区,但它无法识别为包含可用时区信息。
文档also mentions 是您可以使用的预构建文件,但需要注意的是,使用它可能意味着某些时区可能与您系统上的时区不完全匹配......所以如果您正在做时区MySQL 内部和外部的转换,可能存在不一致,因为时区偶尔会改变。
【讨论】:
谢谢。来自主机的另一条注释是“我们的默认设置在从 root 用户运行 MySQL 命令时不需要 MySQL root 密码。因此,以 root 身份登录时不需要“-u root”。” 如果root@localhost
没有密码,这总是正确的,但在这种情况下实际上并没有任何区别。使用它,或者省略它,不会改变任何东西。
此页面是搜索“如何在 mysql 中填充时区表”的人的***谷歌搜索结果。如果可能的话,请分享一些关于如何做的说明,或者至少链接到一个可以做的网站。
原始发帖人将时区数据加载到 MySQL 的命令是正确的。更多信息是available in the MySQL docs。以上是关于加载 MySQL 时区表的主要内容,如果未能解决你的问题,请参考以下文章