問題現象:在資料庫中的日期顯示正常,但是通過JSP進行呼叫后發現時間偏差了13個小時,經查詢,此問題是由于MySQL的默認時區設定造成的,
具體排查和操作方法如下:
一、查看MySQL當前時區和時間
> show variables like "%time_zone%"; #查看時區

#time_zone說明mysql使用system的時區,system_time_zone說明system使用CST時區
> select curtime(); #查看時間 > select now(); #查看日期+時間
二、修改時區
方法1:通過修改環境變數引數來修改時區
> set global time_zone = '+8:00'; ##修改mysql全域時區為北京時間,即我們所在的東8區 > set time_zone = '+8:00'; ##修改當前會話時區 > flush privileges; #立即生效
實際操作程序中,這條修改并沒有成功,顯示0 row(s) affected
方法2:通過修改my.cnf組態檔來修改時區
# vim /etc/my.cnf 在[mysqld]區域中加上:default-time_zone = '+8:00'
修改完成后,需要重啟啟動MySQL,配置生效,
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/12665.html
標籤:MySQL
