今天在項目中遇到業務更新時間與數據庫表中的時間更新字段不一致現象,相差8個小時左右,於是查詢數據庫系統時間
select sysdate() //查詢數據庫系統時間命令
果然數據庫時間不對,第一時間想到數據庫所在的服務器時間可能與網絡時間不同步,但是立即想到這個可能性應該為0(因為數據庫在阿里雲主機上。。。),
隨機在服務器(Linux服務器)上敲了date命令,服務器時間的確沒錯。
后來想到,我的mysql是部署到服務器的docker容器上,於是進入了我的mysql,果然是容器時間不對,於是將服務器上時間文件拷貝到容器中,命令如下:docker cp /etc/localtime [containerId]:/etc/localtime,
其中containerId為啟動的容器id,也可以是容器的名稱,我的mysql容器名稱是mysqlserver,所以具體命令如下:
docker cp /etc/localtime mysqlserver:/etc/localtime
隨后在容器中查看時間,可以看到容器時間與所在服務器時間已經保持一致。