Mysql數據庫存儲數據時間與系統獲取時間不一致


最近進行項目開發,發現存在數據庫內的數據和系統查詢到的數據相差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區時效果一致

注:

生產服務器盡量不要改動,建議大家在程序中進行區時設置。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM