MySQLのタイムゾーンを変更する

alkoshikawa 1,484views 更新:2013年9月4日

Web、APサーバーと同じようにMySQLにもタイムゾーンがあります。

MySQLのタイムゾーンはセッション単位で変更するか、全体を変更するかの2パターンあります。

セッション単位

mysql> set time_zone = '+09:00';

全体

mysql> set global time_zone = '+09:00';

 以下で確認

mysql> show variables like 'time_zone';
mysql> show global variables like 'time_zone';

RDSなどの global が使えない環境では全体の変更ができません。

アプリからクエリを実行するときに毎回 set time_zone を入れるしか無いようです、

フレームワーク的にそれができない時は・・・・、now(), current_time()などで検索をおこなうのはやめましょう。

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません