T-CREATOR

【設定方法】Dockerで構築したMySQLのタイムゾーンをSYSTEMからAsia/Tokyoへ変更する設定手順

【設定方法】Dockerで構築したMySQLのタイムゾーンをSYSTEMからAsia/Tokyoへ変更する設定手順
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

Dockerで構築したMySQLのタイムゾーンをSYSTEMからAsia/Tokyoへ変更する設定手順をメモしました。

MySQLのタイムゾーンの現在の設定

DockerのMysqlコンテナへログイン

DockerのmysqlというMysqlコンテナへログインします。

terminal$ docker exec -it mysql /bin/bash

MySQLへログイン

mysqlコマンドからMySQLへログインします。

terminal$ mysql -u root -p
// パスワードを入力

タイムゾーンの設定確認

下記SQLコマンドでタイムゾーンの確認をします。

MySQL> show variables like '%time_zone%';
+------------------+------------+
| Variable_name    | Value      |
+------------------+------------+
| system_time_zone | UTC        |
| time_zone        | SYSTEM     |
+------------------+------------+

MySQLのタイムゾーンの変更手順

my.confの追記

my.confdefault-time-zoneを追記します。

my.cnf[mysqld]
default-time-zone = 'Asia/Tokyo'

MySQLの再起動

docker-composeで起動しているためdocker-composeコマンドで再起動します。
他のケース(OSへインストールしている場合など)は適宜それぞれ対応(systemctl コマンドで再起動する)してください。

MySQLコンテナの停止

docker-composeコマンドでMySQLコンテナの起動を停止します。

ruby$ docker-compose down

MySQLコンテナの起動

docker-composeコマンドでMySQLコンテナの起動を起動します。

ruby$ docker-compose up -d

MySQAのタイムゾーンの設定を再確認

DockerのMysqlコンテナへログイン

DockerのmysqlというMysqlコンテナへログインします。

terminal$ docker exec -it mysql /bin/bash

MySQLへログイン

mysqlコマンドからMySQLへログインします。

terminal$ mysql -u root -p
// パスワードを入力

タイムゾーンの設定確認

下記SQLコマンドでタイムゾーンの確認をします。

MySQL> show variables like '%time_zone%';
+------------------+------------+
| Variable_name    | Value      |
+------------------+------------+
| system_time_zone | UTC        |
| time_zone        | Asia/Tokyo |
+------------------+------------+

これで変更が確認できました。

記事Article

もっと見る