MySQLのタイムゾーン問題の修正

1106 ワード

MySQL 8はいくつかの新しい特性を追加し、セキュリティも大幅に向上しました.
結果としてmysqlを接続する際にserverTimezoneのパラメータを追加する必要があります.
つまり
jdbc:mysql://localhost/kg_demo_movie?serverTimezone=UTC

これは実は1つのとても良い解決方法で、どうしていくつかのわけがわからない原因のため、1つのスクリプトファイルはこのパラメータを使うことができません.
ヒントを見ているとMySQL自体のタイムゾーンの問題しか修正できません.
タイムゾーンを変更する方法は次のとおりです.
MySQLコマンドラインで次のコードを実行します.
> set global time_zone = '+8:00';  ##  mysql         ,       8 
> set time_zone = '+8:00';  ##        
> flush privileges;  #    

これにより、デフォルトのタイムゾーン問題が変更されます.(この方法は使い捨ての方法であり、サービスの再起動は失効する)
 
この方法でMySQLのtime_を表示できます.zoneの設定.
> select curtime();   # select now()   
+-----------+
| curtime() |
+-----------+
| 15:18:10  |
+-----------+
> show variables like "%time_zone%";
+------------------+--------+
| Variable_name    | Value  |
+------------------+--------+
| system_time_zone | CST    |
| time_zone        | SYSTEM |
+------------------+--------+
2 rows in set (0.00 sec)
#time_zone  mysql  system   ,system_time_zone  system  CST