4.4.6 mysql_tzinfo_to_sql-加载时区 table

mysql_tzinfo_to_sql程序将时区 table 加载到mysql数据库中。它在具有 zoneinfo 数据库(描述时区的文件集)的系统上使用。此类系统的示例是 Linux,FreeBSD,Solaris 和 macOS。这些文件的一个可能位置是/usr/share/zoneinfo目录(在 Solaris 上为/usr/share/lib/zoneinfo)。如果您的系统没有 zoneinfo 数据库,则可以使用第 5.1.13 节“ MySQL 服务器时区支持”中描述的可下载软件包。

mysql_tzinfo_to_sql可以通过几种方式调用:

shell> mysql_tzinfo_to_sql tz_dir
shell> mysql_tzinfo_to_sql tz_file tz_name
shell> mysql_tzinfo_to_sql --leap tz_file

对于第一个调用语法,请将 zoneinfo 目录路径名传递给mysql_tzinfo_to_sql并将输出发送到mysql程序。例如:

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

mysql_tzinfo_to_sql读取系统的时区文件并从中生成 SQL 语句。 mysql处理这些语句以加载时区 table。

第二种语法使mysql_tzinfo_to_sql加载与时区名称* tz_name 对应的单个时区文件 tz_file *:

shell> mysql_tzinfo_to_sql tz_file tz_name | mysql -u root mysql

如果您的时区需要计算 leap 秒,请使用第三种语法调用mysql_tzinfo_to_sql,这将初始化 the 秒信息。 * tz_file *是您的时区文件的名称:

shell> mysql_tzinfo_to_sql --leap tz_file | mysql -u root mysql

运行mysql_tzinfo_to_sql之后,最好重新启动服务器,以使其不再 continue 使用任何以前缓存的时区数据。