ホームページ >データベース >mysql チュートリアル >MySQL でタイムゾーンを操作するにはどうすればよいですか?

MySQL でタイムゾーンを操作するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-03 19:59:29492ブラウズ

How to Work with Time Zones in MySQL?

MySQL タイム ゾーン

MySQL は幅広いタイム ゾーンをサポートしており、さまざまな地理的地域の日付と時刻を保存および操作できます。

タイム ゾーンのリスト

MySQL >= 5.7

MySQL タイム ゾーンの完全なリストを表示するには、次のクエリを実行します。

<code class="sql">SELECT * FROM mysql.time_zone_name;</code>

MySQL 5.7

システムからタイム ゾーン データをロードしてリストを表示するには、次のコマンドを実行します。
<code class="bash">mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql</code>
<code class="sql">USE mysql;
SELECT * FROM `time_zone_name`;</code>

カルガリー現地時間の設定

カルガリーの現地時間で時刻を表示するには、time_zone システム変数を設定します:
<code class="sql">SET time_zone = 'America/Edmonton';</code>

注:

'America/Edmonton' をカルガリーの適切なタイム ゾーン識別子に置き換えます。

トラブルシューティング

MySQL でタイム ゾーンが使用できないことがわかった場合は、次のコマンドを実行します。
<code class="bash">mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql</code>

このコマンドは、システムのタイム ゾーン データを MySQL にロードします。

定期更新

システムのタイムゾーンが変更されたときに MySQL タイムゾーンが自動的に更新されるようにするには、次のスクリプトを cron ジョブに追加します。
<code class="bash">#!/bin/bash

if [ `find /usr/share/zoneinfo -mtime -1 | grep -v '\.tab' | wc -l` -gt 0 ]; then
    echo "Updating MySQL timezone info"
    mysql_tzinfo_to_sql /usr/share/zoneinfo 2>/dev/null | mysql -u root mysql
    echo "Done!"
fi</code>

以上がMySQL でタイムゾーンを操作するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。