4

mysql で convert_tz が null を返すことに問題があります。

mysql --version
mysql  Ver 14.14 Distrib 5.6.11, for osx10.7 (x86_64) using  EditLine wrapper 

マニュアルを読みましたhttp://dev.mysql.com/doc/refman/5.5/en/time-zone-support.html 次のコマンドを実行しました: bash-3.2# mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql Enter password: 警告: Unable to load '/usr/share/zoneinfo/+VERSION' as time zone. それをスキップします。

Warning: Unable to load '/usr/share/zoneinfo/Asia/Riyadh87' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/Asia/Riyadh88' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/Asia/Riyadh89' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/Mideast/Riyadh87' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/Mideast/Riyadh88' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/Mideast/Riyadh89' as time zone. Skipping it.
ERROR 1406 (22001) at line 38916: Data too long for column 'Abbreviation' at row 1

次に、mysqlを使用してこのコマンドを実行しました。SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','EST'); null を返します。mysql.time_zone_transition_type テーブルに GMT および EST エントリがあることを確認できます。

4

2 に答える 2

0

**更新、Linuxボックスを使用してsqlファイルを作成することでこれを修正しました:mysql_tzinfo_to_sql /usr/share/zoneinfo、そしてこのファイルを私のMac mysqlにインポートしました。

于 2013-07-29T00:00:28.627 に答える