說明:這裡總結記錄修改mysql時區的三種方法。
方法一:通過mysql命令列模式下動態修改
1.1 檢視mysql當前時間,當前時區
> select curtime(); #或select now()也可以
| curtime() |
| 15:18:10 |
> show variables like "%time_zone%";
| variable_name | value |
| system_time_zone | cst |
| time_zone | system |
2 rows in set (0.00 sec)
#time_zone說明mysql使用system的時區,system_time_zone說明system使用cst時區
1.2 修改時區
> set global time_zone = '+8:00'; ##修改mysql全域性時區為北京時間,即我們所在的東8區
> set time_zone = '+8:00'; ##修改當前會話時區
> flush privileges; #立即生效
方法二:通過修改my.cnf配置檔案來修改時區
# vim /etc/my.cnf ##在[mysqld]區域中加上
default-time_zone = '+8:00'
# /etc/init.d/mysqld restart ##重啟mysql使新時區生效
方法三:如果不方便重啟mysql,又想臨時解決時區問題,可以通過php或其他語言在初始化mysql時初始化mysql時區
這裡,以php為例,在mysql_connect()下使用:
mysql_query("set time_zone = '+8:00'")
這樣可以在保證你不重啟的情況下改變時區。但是mysql的某些系統函式還是不能用如:now()。這句,還是不能理解。
mysql 時區設定 修改MySQL時區設定的方法
mysql 時區預設是伺服器的時區。檢視 複製 如下 mysql show variables like time zone variable name value system time zone cst time zone system 2 rows in set 0.00 sec 可以通過修改...
mysql設定儲存時區 MySQL 設定時區的影響
個人理解,mysql 設定時區的不同會影響日期相關函式的返回結果。對資料表裡的日期資料插入 查詢沒有影響,儲存的都是本地時間。舉例來說,對於 select now 如果 mysql 伺服器時區被設定為東五區,返回的就是東五區的時間,而不是東八區的時間。對於 select unix timestamp...
mysql 時區設定 設定MySQL預設時區
mysql預設的時區是utc時區,比北京時間晚8個小時。假設日誌裡面的時間是中午12 00,那麼北京時間應該是晚上的8 00點鐘。為方便檢視和設定時間,我們要設定mysql的預設時區,以符合本地使用。1 永久有效方法 修改my.cnf檔案,加入如下2行 default time zone 08 00...