3 回答

TA貢獻1804條經驗 獲得超2個贊
如Umar所述,最簡單的方法是
mysql> SET GLOBAL time_zone = 'America/New_York';
對于具有夏令時調整的時區,使用命名的時區很重要。但是,對于某些Linux構建,您可能會得到以下響應:
#1298-時區未知或不正確
如果您看到此消息,則可能需要運行tzinfo_to_sql轉換……這很容易做到,但并不明顯。在linux命令行中輸入:
mysql_tzinfo_to_sql /usr/share/zoneinfo/|mysql -u root mysql -p
提供您的root密碼(MySQL root,而不是Linux root),它將把zoneinfo中的所有定義加載到mysql中。然后,您可以返回并運行
mysql> SET GLOBAL time_zone = timezone;

TA貢獻2003條經驗 獲得超2個贊
盡管Bryon的答案很有幫助,但我只是添加了他的鏈接用于PHP時區名稱,該名稱與MySQL時區名稱不同。
如果要將單個會話的時區設置為GMT + 1(準確地說是UTC + 1),只需在該命令中使用字符串“ +01:00”。即:
SET time_zone = '+01:00';
要查看您的MySQL會話使用的時區,只需執行以下命令:
SELECT @@global.time_zone, @@session.time_zone;
這是一個具有更多詳細信息的出色參考:MySQL 5.5時區參考
添加回答
舉報