कुछ अन्य लोगों की तरह मुझे भी यह त्रुटि हो रही है जब मैं रेक डीबी चलाता हूं: अपने प्रोजेक्ट में माइग्रेट करता हूं या यहां तक कि रूबी 3.2 एप्लिकेशन पर मेरी रूबी के लिए अधिकांश डेटाबेस कार्यों का प्रयास करता हूं ।
PGError (सर्वर से कनेक्ट नहीं हो सका: ऐसी कोई फ़ाइल या निर्देशिका नहीं है। क्या सर्वर स्थानीय रूप से चल रहा है और यूनिक्स डोमेन सॉकेट "/tmp/.s.PGSQL.5432" पर कनेक्शन स्वीकार कर रहा है?
मैंने PostgreSQL स्थापित किया साथ Homebrew एक लंबे समय पहले और का एक प्रयास किया स्थापना निम्नलिखित MongoDB हाल ही में मेरी PostgreSQL स्थापित एक ही कभी नहीं रहा। मैं OS X v10.6 स्नो लेपर्ड चला रहा हूं।
क्या गलत है और मैं कैसे बेहतर समझ सकता हूं कि PostgreSQL कैसे है और मेरे मैक पर सेटअप होना चाहिए?
अब तक (मुझे लगता है) यह मुझे बताता है कि PostgreSQL नहीं चल रहा है (?)।
ps -aef|grep postgres (ruby-1.9.2-p320@jct-ana) (develop) ✗
501 17604 11329 0 0:00.00 ttys001 0:00.00 grep postgres
लेकिन क्या यह मुझे बताता है कि PostgreSQL चल रहा है?
✪ launchctl load -w /usr/local/Cellar/postgresql/9.1.4/homebrew.mxcl.postgresql.plist (ruby-1.9.2-p136)
homebrew.mxcl.postgresql: Already loaded
मैं यह कैसे तय करुं? मैं क्या नहीं देख रहा हूँ?
पुनश्च: ~/Library/LaunchAgents
दो PostgreSQL .plist फ़ाइलें शामिल हैं। मुझे यकीन नहीं है कि यह प्रासंगिक है।
org.postgresql.postgres.plist
homebrew.mxcl.postgresql.plist
मैंने निम्नलिखित की कोशिश की और नीचे के रूप में एक परिणाम मिला।
$ psql -p 5432 -h लोकलहोस्ट
psql: could not connect to server: Connection refused
Is the server running on host "localhost" (127.0.0.1) and accepting
TCP/IP connections on port 5432?
could not connect to server: Connection refused
Is the server running on host "localhost" (::1) and accepting
TCP/IP connections on port 5432?
could not connect to server: Connection refused
Is the server running on host "localhost" (fe80::1) and accepting
TCP/IP connections on port 5432?
मैंने तब से पढ़ा है कि यह ठीक हो रहा है क्योंकि OS X PostgreSQL का अपना संस्करण स्थापित करता है और Homebrew एक अलग स्थान पर एक अलग संस्करण स्थापित करता है और PostgreSQL कमांड / tmp / निर्देशिका में दिख रहे हैं। आपको स्टैक ओवरफ्लो पर और अधिक खोज करने की आवश्यकता होगी, लेकिन मूल रूप से आप PostgreSQL को सहानुभूति देते हैं ताकि उस tmp पथ में कुछ भी देखने पर वास्तव में वास्तविक पथ मिल जाए, यदि यह समझ में आता है।
यह वह कड़ी है जहां मुझे कुछ और चीजें मिलनी चाहिए , विशेष रूप से ऊपर के अनुसार सिमलिंक करते हुए, मैक ओएसएक्स लायन पोस्टग्रैज /tmp/.s.PGSQL.5432 पर कनेक्शन स्वीकार नहीं करता है । मैं अभी भी चाहता हूं कि कोई व्यक्ति पोस्ट एक्सरेक्यूएल को ओएस एक्स पर स्थापित करने के पीछे अवधारणाओं का एक सभ्य विवरण एक साथ रखे और यह सब इतना मुश्किल क्यों है।
समस्या निवारण में मदद करने के लिए नवीनतम अंतर्दृष्टि:
$ which psql // This tells you which PostgreSQL you are using when you run $ psql.
फिर भागो:
$ echo $PATH
ध्यान रखने योग्य बात यह है:
सुनिश्चित करें कि PostgreSQL की प्रतिलिपि के लिए पथ प्रविष्टि आप OS X सिस्टम के PostgreSQL के पथ से पहले चलाना चाहते हैं।
यह एक मुख्य आवश्यकता है जो यह तय करती है कि PostgreSQL कौन सा चलता है और मुझे बताया गया है कि इनमें से अधिकांश मुद्दे हैं।