mysql_tzinfo_to_sql プログラムは、mysql
データベースに、タイムゾーンテーブルをロードします。 zoneinfo データベース (タイムゾーンを記述するファイルのセット) があるシステムで使用します。 このようなシステムの例には、Linux、FreeBSD、Solaris および macOS があります。 これらのファイルの適切な場所の 1 つは /usr/share/zoneinfo
ディレクトリです (Solaris では /usr/share/lib/zoneinfo
)。 zoneinfo データベースがないシステムの場合には、セクション5.1.15「MySQL Server でのタイムゾーンのサポート」で説明するダウンロード可能なパッケージを使用できます。
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 はこれらのステートメントを処理して、タイムゾーンテーブルをロードします。
2 番目の構文は、mysql_tzinfo_to_sql がタイムゾーン名 tz_name
に対応する単一のタイムゾーンファイル tz_file
をロードします。
shell> mysql_tzinfo_to_sql tz_file tz_name | mysql -u root mysql
うるう秒を考慮する必要がある場合は、3 番目の構文を使用して mysql_tzinfo_to_sql を呼び出します。これはうるう秒の情報を初期化します。tz_file
はタイムゾーンファイルの名前です。
shell> mysql_tzinfo_to_sql --leap tz_file | mysql -u root mysql
mysql_tzinfo_to_sql の実行後、以前にキャッシュしたすべてのタイムゾーンデータを使用し続けないように、サーバーを再起動することをお勧めします。