欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

mysql的UTC時區慢8小時

劉柏宏2年前10瀏覽0評論

MySQL是一款流行的開源數據庫,但是它存在一個UTC時區慢8小時的問題。

UTC是協調世界時,也叫世界統一時間,是以格林威治天文臺的標準時間作為基礎。而MySQL默認使用的是系統時區,而系統時區受到操作系統和默認配置的限制,可能與UTC存在差異。

mysql>SELECT NOW();
+---------------------+
| NOW()               |
+---------------------+
| 2022-03-22 09:53:42 |
+---------------------+
1 row in set (0.00 sec)

上述示例中,MySQL返回的當前時間是2022年3月22日9點53分42秒,但實際上UTC時間應該是2022年3月22日1點53分42秒。這就是UTC時區慢8小時的問題。

解決UTC時區慢8小時的問題有多種方法,其中一種方法是設置MySQL的時區參數。可以使用以下命令查看當前的時區參數。

mysql>SELECT @@global.time_zone, @@session.time_zone;
+--------------------+---------------------+
| @@global.time_zone | @@session.time_zone |
+--------------------+---------------------+
| SYSTEM             | SYSTEM              |
+--------------------+---------------------+
1 row in set (0.00 sec)

上述示例中,MySQL的時區參數都是SYSTEM,表示使用系統時區。現在將MySQL的時區參數修改為UTC。

mysql>SET GLOBAL time_zone = '+0:00';
Query OK, 0 rows affected (0.00 sec)
mysql>SELECT @@global.time_zone, @@session.time_zone;
+--------------------+---------------------+
| @@global.time_zone | @@session.time_zone |
+--------------------+---------------------+
| +0:00              | +0:00               |
+--------------------+---------------------+
1 row in set (0.00 sec)

修改后,MySQL的時區參數變為UTC,再次查詢當前時間。

mysql>SELECT NOW();
+---------------------+
| NOW()               |
+---------------------+
| 2022-03-22 01:53:42 |
+---------------------+
1 row in set (0.00 sec)

現在MySQL返回的當前時間與UTC時間一致,問題得到解決。