最近進行項目開發,發現存在數據庫內的數據和系統查詢到的數據相差8小時
發現有2種比較合適的方法
(一)修改mysql服務的區時
centos進入mysql查看/修改時區
1.輸入以下命令進入mysql
mysql -uroot -p
然后輸入 password
2.查看mysql上的當前時間
select curtime();
3.查看時區
show variables like "%time_zone%";
#time_zone如果是system說明mysql使用system的時區(東八區獲取到的時間會實際時間少4小時,需要在程序application.yml),system_time_zone說明system使用CST時區
4.設置區時(time_zone)為東八區
set time_zone='+8:00';
上圖我的時間是已經執行設置好后的顯示
(二)在程序中設置mysql的區時
--針對application 可以設置:
serverTimezone=Asia/Shanghai
與修改服務器上mysql區時效果一致
注:
生產服務器盡量不要改動,建議大家在程序中進行區時設置。