Help us understand the problem. What is going on with this article?

MySQLのバージョンをあげたら、ログ出力される時間がおかしくなった

More than 3 years have passed since last update.

起きたこと

MySQL5.7にupgradeした際に、errorログ、slowクエリログなど、ログを確認したら、
時間がおかしいこと(utc)になっていた。

確認しても、どこもJSTになっているはず、、

  • linuxのdateコマンド
$ date
2017年  1月 21日 月曜日 07:15:37 JST
  • mysqlのtimezone設定
mysql> SHOW GLOBAL VARIABLES LIKE '%time_zone';
+------------------+--------+
| Variable_name    | Value  |
+------------------+--------+
| system_time_zone | JST    |
| time_zone        | SYSTEM |
+------------------+--------+
2 rows in set (0.01 sec)
  • mysqlのdatetime
mysql> SELECT NOW();
+---------------------+
| NOW()               |
+---------------------+
| 2017-01-21 07:15:37 |
+---------------------+
1 row in set (0.00 sec)

原因は、log_timestamps

mysqlの設定に、log_timestampsという項目が、5.7.2から導入されていた。
こいつによって、ログ出力時のdateは、log_timestampsの設定に依存されてしまう。
そして、デフォルト値がutcになっているため、ログが全てutcになっていた。

mysql> SELECT @@log_timestamps;
+------------------+
| @@log_timestamps |
+------------------+
| UTC              |
+------------------+
1 row in set (0.00 sec)

my.cnfで設定値を変更

#/etc/my.cnf
[mysqld]
log_timestamps=SYSTEM

上記のように、SYSTEMに変更してあげることで、
ログ出力時の時刻はOSで設定されている時間を見るようになる。

再起動して、反映を確認

mysql> SELECT @@log_timestamps;
+------------------+
| @@log_timestamps |
+------------------+
| SYSTEM           |
+------------------+
1 row in set (0.00 sec)

error.log, slow.log, general.logなど、各種ログファイルがjstで
表示されるようになったことを確認。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした