Tôi cần chuyển đổi db hiện tại (trường datetime) từ giờ địa phương ut UTC.Mysql: Chuyển đổi DB từ giờ địa phương sang UTC
Giá trị được lưu trữ thời gian biểu quảng cáo trên máy chủ có múi giờ CET (+1) (với giờ mùa hè +2). Khi lựa chọn dữ liệu tôi sử dụng UNIX_TIMESTAMP()
, mà ma thuật bù đắp cho tất cả mọi thứ, tức là, thay đổi múi giờ và dst (nếu tôi đã đọc tài liệu đúng).
Tôi đang chuyển db sang máy chủ mới có UTC làm thời gian hệ thống.
Chỉ cần trừ -1 H sẽ không hoạt động, vì thời gian mùa hè là +2.
Bất kỳ ý tưởng nào về cách thông minh để thực hiện việc này? (sử dụng sql hoặc một số tập lệnh lang)
Xin chào, tôi biết đã một lúc kể từ khi bạn trả lời, nhưng vì lý do nào đó mà câu lệnh chọn không hoạt động đối với tôi ... Tôi đã kiểm tra tài liệu và tôi có thể nhận được 'SELECT CONVERT_TZ ('2004-01-01 12 : 00: 00 ',' + 00:00 ',' + 10:00 '); ', nhưng không phải những gì bạn mô tả ở trên ... có điều gì đó mà tôi đang thiếu không? Tôi tiếp tục nhận được null cho nó. – KVISH
@ kalvish, bạn có thể chỉ cần điền bảng mysql.time_zone_name. Hãy thử chạy lệnh này trong trình bao để điền bảng đó: 'mysql_tzinfo_to_sql/usr/share/zoneinfo | mysql -u root mysql' –
SELECT CONVERT_TZ ('2017-02-15 08:00:00', "UTC", "CST"); return null – wyx