2011-03-30 81 views

回答

1

所以我檢查,哪個時區 MySQL服務器使用由檢查系統 變量

你是怎麼做到這一點?

嘗試此查詢,請告訴我結果:

SELECT @@global.time_zone, @@session.time_zone; 

可能有三種類型的結果。

  • 系統

這意味着,MySQL使用您的操作系統的時區設置

  • 像 '+01:00' 或任何 值

這是與UTC(協調世界時)的差異

  • 像「歐洲/柏林」

這基本上是與上面相同,但你必須在MySQL填充你的時區表。

您會看到,datetime值由MySQL在內部存儲爲UTC值。 因此,當您在SYSTEM表中將SYSTEM變量設置爲'Europe/Berlin'/'+01:00'時,在'2011-03-30 12:34:56'中插入'2011-03-30 12:34:56',MySQL會計算'2011-03 -30 11:34:56',將值保存在數據庫中。當你查詢你的日期時間值時,MySQL再次添加那個小時(假設你的時區設置沒有改變),並給你提供值'2011-03-30 12:34:56'