私のサーバーはMDT
で実行されています
だから私はEST
を変換するために次のものを使用した
SET time_zone = '-5:00'
しかし、どうすればEDT
に切り替えることができますか
While `EST` is only valid in winter, while in summer how to change it to `EDT`
名前付きタイムゾーンを使用しようとしました。しかし、私は次のエラーが発生しています
#1298 - Unknown or incorrect time zone: 'America/Toronto'
この問題を解決する方法がわかりません
切り替え方法
UTC -05からUTC-04
Windowsを使用しているため、タイムゾーンの説明テーブルをMySQLサーバーにインポートする必要があります。
Linux、BSD、およびMac OS Xの場合、タイムゾーンテーブルをロードする必要がある場合は、次を実行します。
$ mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -uroot mysql
私のためにWindowsを使用してWampServer:
より詳しい情報:
「MyISAMタイムゾーンテーブルに.frm、.MYD、および.MYIファイルを含むタイムゾーンパッケージを使用するには、ダウンロードして解凍します。これらのテーブルファイルはmysqlデータベースの一部であるため、MySQLサーバーのデータディレクトリのmysqlsubdirectoryにファイルを配置する必要があります。これを行う前にサーバーを停止し、その後再起動してください。」
http://dev.mysql.com/doc/refman/5.7/en/time-zone-support.html#time-zone-installation
略語の代わりに「America/New_York」などのzoneinfo名を使用しようとしましたか(これは半分の時間のみ有効です)。
理想的には、サーバーのタイムゾーンはもちろん使用しないでください。UTCで日付を保存してから、クライアントコードで適切なタイムゾーンに変換してください。 (これは、何を保存しているかによって異なります。タイムゾーンを持つユーザーが指定する将来の日付/時刻値は、any他のタイムゾーンに変換せずに、そのまま保存する必要がありますルールは現在と将来の日付/時刻の間で変更されます。しかし、マシンによって記録された瞬間、例えばロギング、トランザクションなどのために、私は間違いなくUTCを保存します。クライアントにも同じルールがあります。」)
完全を期すために、Macユーザーはmysql_tzinfo_to_sql
ユーティリティを/usr/local/mysql/bin
ディレクトリで見つけることができます。
したがって、完全なコマンドは/usr/local/mysql/bin/mysql_tzinfo_to_sql /usr/share/zoneinfo | ./mysql -p -u root mysql
になります
私はユーティリティを見つけるのに何時間も費やしました、上記のパスはあなたのものを救うかもしれません!