2010-02-18 11 views
6

या तो मैं बेवकूफ हूं या यहां कुछ गलत है।UTC_TIMESTAMP() वापसी -10: 00 यूटीसी कैसे चुन सकता है?

मैं दो एसक्यूएल सर्वर है, एक अपने स्थानीय मशीन (स्थानीय समय 2 जीएमटी) पर है और अन्य कहीं और है (NOW()+8 जीएमटी वापस जाने के लिए लगता है) और मैं phpMyAdmin से भी पहुंच। मेरे पास एक टेबल है जिसमें DATETIME कॉलम है। मैं GMT/UTC समय के रूप में वर्तमान जीएमटी/यूटीसी समय की दुकान और उसे फिर से प्रदर्शित करने के लिए

कोशिश कर रहा हूँ, अभी भी।

मूल रूप से मैंने DATE_SUB(NOW(), INTERVAL 8 HOUR) संग्रहीत किया जो ठीक काम करता था। हालांकि, तो मैं UTC_TIMESTAMP() के बारे में पढ़ सकते हैं और इसे और अधिक पसंद आया के रूप में यह कम था और MySQL manual भी कहा:

"वर्तमान समय क्षेत्र सेटिंग में) कार्य ऐसे UTC_TIMESTAMP (के रूप में द्वारा प्रदर्शित मूल्यों या मूल्यों को प्रभावित नहीं करता DATE, TIME, या DATETIME कॉलम। "

तो सही सही है? नहीं छोड़कर

मान लें कि वर्तमान जीएमटी 2010-02-18 17:18:17 (मैंने इसे ब्रिटेन में किसी के साथ भी दो बार चेक किया है)।

अपने स्थानीय (+2) सर्वर, मैं मिल निम्नलिखित प्रश्नों के लिए निम्न परिणाम पर:

SELECT NOW(); 2010-02-19 01:18:17 

SELECT UTC_TIMESTAMP(); 2010-02-19 07:18:17 (WHY?!) 

एम आई:

SELECT NOW(); 2010-02-18 19:18:17 

SELECT UTC_TIMESTAMP(); 2010-02-18 17:18:17 

मेरे ऑनलाइन सर्वर पर मैं कुछ भूल रहा हूं?!

+0

मैं एक ही मुद्दे से पीड़ित हूं। – diEcho

उत्तर

10

शायद क्योंकि ऑनलाइन सर्वर पर घड़ी गलत है?

इस चलाने की कोशिश करें:

SELECT @@system_time_zone, NOW(), UTC_TIMESTAMP() 

और देखें कि कौन क्षेत्र इसे वापस करता है और यह अंतर से मेल खाता है।

+0

@@ system_time_zone \t NOW() \t UTC_TIMESTAMP() सीएसटी \t 2010-02-19 01:35:30 \t 2010-02-19 07:35:30 तो, अगर मैं यह सही समझ रहा हूँ, सर्वर कहते हैं कि यह सीएसटी (-6) है और यह 1:35 बजे सेट है, इसलिए एसक्यूएल की कहानियां अच्छी तरह से यूटीसी प्राप्त करने के लिए 6 जोड़ती हैं ... बीएएच! कितना निराशाजनक इसे साफ़ करने के लिए धन्यवाद, मैंने सोचा कि मैं कुछ गलत कर रहा था, यह मुझे पागल कर रहा है। – Alex

+0

वह निराशा क्यों है? अब समय() टाइमज़ोन प्रभावी होने के बाद वर्तमान समय है, इसलिए कार्य पूरी तरह से अपना काम कर रहे हैं? – deed02392

+0

@Alex मुझे लगता है कि MySQL तर्क/स्पष्टीकरण पूर्ण ज्ञान बनाता है, बीटीडब्ल्यू, तो कौन सा समय अपने टाइमज़ोन के अनुसार सही नहीं था यानी आपका स्थानीय सर्वर या ऑनलाइन सर्वर? – sactiw

संबंधित मुद्दे