問題
數據庫插入的時間統統相差8個小時。
排查過程
-
//初步懷疑服務器時間不對。date看下時間是對的 //然後懷疑代碼問題,檢查代碼後沒有問題 //最後懷疑mysql的問題。 --docker exec -it mysql /bin/bash --mysql -uroot -p --show variables like '%time_zone%' +------------------+--------+ | Variable_name | Value | +------------------+--------+ | system_time_zone | UTC | | time_zone | SYSTEM | +------------------+--------+ //可見使用的是系統時區 -- set time_zone ‘+8:00’; -- select now(); +---------------------+ | now() | +---------------------+ | 2019-10-29 15:09:31 | +---------------------+ 1 row in set (0.00 sec) //發現時區是對的 然後新建一個時間插入操作發現時間還是不對的,然後懷疑沒有重啓的問題。 //重啓 docker container mysql restart //這下該對了吧,重新執行插入操作還是不對。無語 //懷疑重啓之後剛纔改的失效了比較是docker內置的 //然後咋整,別怕還有辦法,這下我們直接改文件 -- docker cp mysql:/etc/mysql/my.cnf ./my.cnf -- vim my.cnf 最後一行加上 default-time-zone = '+8:00' -- docker cp ./my.cnf mysql:/etc/mysql/my.cnf -- docker container mysql restart 問題得到解決