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

पोस्टग्रेस्क्ल डेटाबेस के साथ त्रुटि:क्या सर्वर स्थानीय रूप से चल रहा है और यूनिक्स डोमेन सॉकेट /var/run/postgresql/.s.PGSQL.5432 पर कनेक्शन स्वीकार कर रहा है?

डेबियन या डेबियन डेरिवेटिव जैसे उबंटू के लिए पैक किए गए पोस्टग्रेएसक्यूएल के लिए सम्मेलन /var/run/postgresql का उपयोग करना है यूनिक्स डोमेन सॉकेट के लिए निर्देशिका के रूप में। दूसरी ओर स्व-संकलित पोस्टग्रेज क्लाइंट लिब के लिए कन्वेंशन /tmp का उपयोग करना है , जब तक कि अन्यथा स्व-कॉन्फ़िगर न किया गया हो।

तो दोनों के बीच इस बेमेल का सामान्य मूल कारण पूर्व-संकलित सर्वर-साइड पैकेज के साथ स्वयं-संकलित क्लाइंट-साइड सामान का मिश्रण है (भले ही क्लाइंट और सर्वर एक ही मशीन पर स्थापित हों, क्लाइंट-साइड और सर्वर-साइड हैं अभी भी अलग है और सिंक से बाहर हो सकता है)।

/tmp . से सॉफ्ट-लिंकिंग इस निर्देशिका के लिए जैसा कि पूछने वाले द्वारा सुझाया गया है, सिवाय इसके कि लिंक हर रिबूट पर खो जाएगा, क्योंकि सामान्य तौर पर /tmp रिबूट पर खाली हो जाता है।

एक बेहतर विकल्प यह होगा कि database.yml . में एक प्रविष्टि के रूप में जोड़ा जाए :

  • या तो host: /tmp यदि वास्तविक सॉकेट पथ /tmp है (स्व-संकलित सर्वर, पैकेज्ड क्लाइंट)

  • या host: /var/run/postgresql अगर असली सॉकेट पथ /var/run/postgresql/ (पैकेज्ड सर्वर, स्व-संकलित क्लाइंट)।

जब होस्ट फ़ील्ड में मान स्लैश वर्ण से शुरू होता है, तो पोस्टग्रेज़ लाइब्रेरी जानता है कि यह होस्टनाम के बजाय स्थानीय सॉकेट के लिए निर्देशिका का स्थान है। निर्देशिका के अंदर फ़ाइल नाम .s.PGSQL.portnumber उत्पन्न होता है और निर्दिष्ट नहीं किया जाना चाहिए, केवल निर्देशिका।

एक अन्य संभावना यह है कि स्व-संकलित सॉफ़्टवेयर पैकेजों को डेबियन के जितना करीब हो सके, डिफॉल्ट को ओवरराइड करते हुए कॉन्फ़िगर किया जाए।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. उत्पादन के लिए रेल प्रदर्शन ट्यूनिंग?

  2. Postgresql थ्रो नल मान कॉलम में JPA में oneToMany संबंध का उपयोग करते समय नॉट-नल बाधा का उल्लंघन करता है

  3. डेटाबेस को जोड़ने के लिए दी गई भूमिका को नहीं छोड़ सकता

  4. मैं जावा तैयार स्टेटमेंट का उपयोग करके पोस्टग्रेज में JSON ऑब्जेक्ट कैसे सम्मिलित कर सकता हूं?

  5. पीजी (0.17.1) स्थापित करते समय एक त्रुटि हुई, और बंडलर जारी नहीं रख सकता