MySQL タイム ゾーン
MySQL でのタイム ゾーン サポートについて知りたいですか? MySQL タイム ゾーンを理解し効果的に使用するのに役立つ包括的なガイドを次に示します。
MySQL タイム ゾーンの完全なリスト
デフォルトでは、MySQL にはタイム ゾーン情報が含まれません。タイム ゾーン データを MySQL にロードするには、次のコマンドを実行します。
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
ロードしたら、次のコマンドを実行して利用可能なタイム ゾーンのリストを表示できます。
USE mysql; SELECT * FROM `time_zone_name`;
Usingタイム ゾーン
タイムスタンプ値のタイム ゾーンを指定するには、 CONVERT_TZ() 関数:
CONVERT_TZ('2012-06-07 12:00:00', 'GMT', 'America/New_York')
タイムスタンプをカルガリーの現地時間に変換します。
タイムゾーン データを自動的にロードします
自動的に更新するにはシステムのタイム ゾーンが変更された場合、MySQL のタイム ゾーンを設定して、パスワードなしで root ログインを許可するようにします。パスワード:
MySQL >= 5.6.6
mysql_config_editor set --login-path=client --host=localhost --user=root --password
MySQL < 5.6.6
~/.my.cnf ファイルを作成します:
user=root password=yourMysqlRootPW
スクリプトを更新
次のスクリプトを追加しますタイムゾーンを更新するための crontab daily:
#!/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!\n"
fi追加のヒント
- タイム ゾーン情報は MySQL で約 5 MB を消費します。
- タイム ゾーン テーブルの削除は避けてください;代わりに、TRUNCATE を使用してください。
以上がMySQL でタイムゾーンを効果的に使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。