同僚が、time_zoneの設定に苦戦していたので。。。
◆ time_zoneの確認・設定は下記になります。
【タイム ゾーンの確認】
SELECT @@global.time_zone, @@session.time_zone;
SHOW TABLES LIKE '%time_zone%';
※time_zone の初期値は、'SYSTEM' で、サーバとシステムの
タイム ゾーンが同じであることを示します。
【my.cnf】
default-time-zone='timezone'
※my.cnfで反映させる場合は、MySQLを再起動して下さい。
【クエリ】
SET GLOBAL time_zone = timezone;
◆ time_zoneの変更をしようとして、エラーになる場合、
タイム ゾーンの情報がロードされていない可能性がありますので、
下記コマンドで実行した上で、再度、time_zoneの変更をしてみて下さい。
例)「Asia/Tokyo」の場合
mysql_tzinfo_to_sql /usr/share/zoneinfo/Asia/Tokyo Asia/Tokyo | mysql -u root -p mysql
◆ セッション毎にタイムゾーンを設定したい場合についても記載しておきます。
※AWSのRDSとかですかね
my.cnfに “init_connect” パラメータを設定します。
下記の例は、rdsで始まるユーザー名の場合は「UTC」、それ以外のユーザーは「Asia/Tokyo」になります。
例1)
init_connect="SET SESSION time_zone = IF(POSITION('rds' IN CURRENT_USER()) = 1,'UTC','Asia/Tokyo')"
例2)
init_connect="SET SESSION time_zone = CASE WHEN POSITION('rds' IN CURRENT_USER()) = 1 THEN 'UTC' ELSE 'Asia/Tokyo' END;"
### init_connectパラメータの注意事項 ###
init_connectパラメータで指定したものは、SUPER権限をもつユーザーに対しては実行されません!
投稿者プロフィール
最新の投稿
- AWS2021年12月2日AWS Graviton3 プロセッサを搭載した EC2 C7g インスタンスが発表されました。
- セキュリティ2021年7月14日ゼロデイ攻撃とは
- セキュリティ2021年7月14日マルウェアとは
- WAF2021年7月13日クロスサイトスクリプティングとは?