Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

RDS पर डिफ़ॉल्ट समय-क्षेत्र सेटिंग के लिए समायोजन

दुर्भाग्य से RDS DB ParameterGroups में default_timezone सेट करना संभव नहीं है, इसलिए आपका प्रयास पहले से ही सही दिशा में था।

$ rds-describe-db-parameters default | grep "time_zone"
DBPARAMETER  default_time_zone                                                                   engine-default  string   static   false

SET GLOBAL के माध्यम से वैश्विक मूल्य निर्धारित करने के लिए आपके पास सुपर विशेषाधिकार होना चाहिए जो आपको RDS उपयोगकर्ता के रूप में नहीं दिया गया है।

टाइम_ज़ोन सेट करने का एकमात्र तरीका प्रति-कनेक्शन के आधार पर है

mysql> SET time_zone = timezone;

अपनी मशीनों पर मैंने यूएस/ईस्टर्न को सफलतापूर्वक आज़माया है लेकिन मुझे काफी पुरानी पीढ़ी चल रही है।

आपके पास उपलब्ध समय क्षेत्र निर्धारित करने के लिए अपने बॉक्स में लॉग इन करें

mysql -h yourboxhost.rds.amazonaws.com -u <youruser> -p

और टाइप करें

mysql> SELECT * FROM mysql.time_zone_name;

आपको स्थापित और मान्य समयक्षेत्र नामों की एक सूची मिलनी चाहिए जिन्हें आप अपने उदाहरण पर सेट कर सकते हैं

+----------------------------------------+--------------+
| Name                                   | Time_zone_id |
+----------------------------------------+--------------+
| Africa/Abidjan                         |            1 |
| Africa/Accra                           |            2 |
| Africa/Addis_Ababa                     |            3 |
| Africa/Algiers                         |            4 |
| Africa/Asmara                          |            5 |
| Africa/Asmera                          |            6 |
| Africa/Bamako                          |            7 |
| Africa/Bangui                          |            8 |
| Africa/Banjul                          |            9 |
| Africa/Bissau                          |           10 |
| Africa/Blantyre                        |           11 |
| Africa/Brazzaville                     |           12 |
| Africa/Bujumbura                       |           13 |
| Africa/Cairo                           |           14 |
etc...

हर बार जब आप अपने डेटाबेस सर्वर से कनेक्ट होते हैं तो आपको टाइम_ज़ोन सेट करना पड़ता है

उदाहरण के लिए यदि आप php Mysqli एक्सटेंशन का उपयोग करते हैं तो आप ऐसा कर सकते हैं

$mysqli = mysqli_init();
mysqli_options($mysqli,MYSQLI_INIT_COMMAND,"SET time_zone = 'Africa/Brazzaville'" );
mysqli_real_connect($mysqli,$host, $user, $pass,$dbName) or die ('Unable to connect');

अन्यथा केवल मैन्युअल रूप से (अपने डेटाबेस कनेक्टर को ऐसा करने दें) SET time_zone = '<YOUR_DESIRED_TIMEZONE>' निष्पादित करें अपने डेटाबेस से कनेक्ट होने के ठीक बाद क्वेरी करें



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Linux/Mac से Amazon EC2 पर MySQL से कैसे कनेक्ट करें?

  2. MySQL संस्करण का निर्धारण कैसे करें

  3. मेरे पास पूर्णांकों की एक सरणी है, मैं प्रत्येक को एक mysql क्वेरी (php में) में कैसे उपयोग करूं?

  4. अनपेक्षित अपवाद:SQLSTATE [HY000] [1045] उपयोगकर्ता के लिए प्रवेश निषेध ****@'लोकलहोस्ट' (पासवर्ड का उपयोग करके:हाँ)

  5. विभिन्न डेटा स्रोतों को पढ़ने/लिखने के लिए हाइबरनेट कैसे सेट करें?