Để đi cùng với nhận xét của @ ypercube CURRENT_TIMESTAMP
được lưu trữ dưới dạng UTC nhưng được truy xuất dưới dạng múi giờ hiện tại, bạn có thể ảnh hưởng đến cài đặt múi giờ của máy chủ của mình với tùy chọn --default_time_zone để truy xuất. Điều này cho phép truy xuất của bạn luôn ở trong UTC.
Theo mặc định, tùy chọn là 'HỆ THỐNG', đó là cách múi giờ hệ thống của bạn được đặt (có thể hoặc không thể là UTC!):
mysql> SELECT @@global.time_zone, @@session.time_zone;
+--------------------+---------------------+
| @@global.time_zone | @@session.time_zone |
+--------------------+---------------------+
| SYSTEM | SYSTEM |
+--------------------+---------------------+
1 row in set (0.00 sec)
mysql> SELECT CURRENT_TIMESTAMP();
+---------------------+
| CURRENT_TIMESTAMP() |
+---------------------+
| 2012-09-25 16:28:45 |
+---------------------+
1 row in set (0.00 sec)
Bạn có thể thiết lập động này:
mysql> SET @@session.time_zone='+00:00';
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT @@global.time_zone, @@session.time_zone;
+--------------------+---------------------+
| @@global.time_zone | @@session.time_zone |
+--------------------+---------------------+
| SYSTEM | +00:00 |
+--------------------+---------------------+
1 row in set (0.00 sec)
Hoặc vĩnh viễn trong my.cnf của bạn:
[mysqld]
**other variables**
default_time_zone='+00:00'
Khởi động lại máy chủ của bạn và bạn sẽ thấy sự thay đổi:
mysql> SELECT @@global.time_zone, @@session.time_zone;
+--------------------+---------------------+
| @@global.time_zone | @@session.time_zone |
+--------------------+---------------------+
| +00:00 | +00:00 |
+--------------------+---------------------+
1 row in set (0.00 sec)
mysql> SELECT CURRENT_TIMESTAMP();
+---------------------+
| CURRENT_TIMESTAMP() |
+---------------------+
| 2012-09-25 20:27:50 |
+---------------------+
1 row in set (0.01 sec)
CURRENT_TIMESTAMP
chưa