ホームページ >データベース >mysql チュートリアル >MySQL サーバーのタイムゾーン設定を決定および管理するにはどうすればよいですか?
MySQL サーバーの現在のタイム ゾーンの取得
MySQL には、グローバルとグローバルの両方の現在のタイム ゾーン設定を取得するのに役立つ関数があります。クライアント固有の構成。これを利用する方法は次のとおりです:
mysql> SELECT @@global.time_zone, @@session.time_zone;
ただし、このメソッドを使用すると、戻り値として「SYSTEM」が取得される可能性があります。これは、MySQL がシステムのタイムゾーンに合わせて設定されていることを示します。
PHP を使用したタイムゾーンの取得
「SYSTEM」の場合プレースホルダーが返された場合は、PHP を利用して、date_default_timezone_get 関数を通じてサーバーのシステムで使用されているタイムゾーンを取得できます。
<?php // Get the system's time zone $timeZone = date_default_timezone_get(); echo "System time zone: $timeZone"; ?>
データベース データのタイム ゾーンに関する考慮事項
MySQL はタイムゾーン情報を含めずに日付と時刻の値を保存することに注意することが重要です。これは次のことを意味します:
mysql> CREATE TABLE foo (timestamp DATETIME) ENGINE=MyISAM; mysql> INSERT INTO foo (timestamp) VALUES (NOW()); mysql> SET time_zone = '+01:00'; mysql> SELECT timestamp FROM foo; | timestamp | | ---------------------- | | 2010-05-29 08:31:59 | mysql> SET time_zone = '+02:00'; mysql> SELECT timestamp FROM foo; | timestamp | | ---------------------- | | 2010-05-29 08:31:59 | <== No change
サーバーのタイムゾーンが変更されても、保存されたタイムスタンプは同じままです。これは、MySQL のタイムスタンプがネイティブにタイム ゾーンを認識していないためです。
タイム ゾーン管理のベスト プラクティス
データの整合性を維持するには、次の推奨事項に従うことが重要です。 :
以上がMySQL サーバーのタイムゾーン設定を決定および管理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。