मेरे पास अपाचे सर्वर और PostgreSQL 9.1 डेटाबेस के साथ मेरी मशीन पर एक स्थानीय देव साइट है। जैसा कि मैं विंडोज का उपयोग कर रहा हूं, मैंने सिगविन भी स्थापित किया है। मैं डेटाबेस तक पहुंच बनाना चाहता हूं और pgAdmin III के सिग्विन कीड़े के माध्यम से कुछ प्रश्न पूछना चाहता हूं, लेकिन यह मुझे बताता है कि psql कमांड नहीं मिला। मुझे साइगविन में psql कमांड कैसे सेट अप करना चाहिए?साइगविन में psql कमांड कैसे सेट अप करें?
उत्तर
अगर मैं आपके सवाल का सही ढंग से समझ आप cygwin चल रहे हैं क्योंकि आप Windows पर बैश और psql के माध्यम से PostgreSQL के खिलाफ प्रश्नों चलाना चाहते हैं, है ना?
सिग्विन बैश से विंडोज़ बाइनरी चला सकता है, इसलिए मूल विंडोज़ स्थापित करें और सुनिश्चित करें कि psql.exe PATH
में है, यदि आवश्यक हो तो आप निष्पादन योग्य प्रतिलिपि बनाने में सक्षम होना चाहिए।
PostgreSQL के एक देशी Cygwin का निर्माण स्थापित करने के लिए कोई जरूरत नहीं है। बस मौजूदा psql उपकरण का उपयोग करें, और सुनिश्चित करें कि आप Windows- देशी psql.exe तक पहुंच सकते हैं।
विंडोज psql विंडोज कंसोल फ़ंक्शन का उपयोग करता है; सिगविन कंसोल 2 जैसे टर्मिनल में सबसे अच्छा चलाता है, जो विंडोज कंसोल एपीआई का समर्थन नहीं करता है। तो psql सिगविन के साथ बिल्कुल अच्छा काम नहीं करता है। साइक्विन क्लाइंट टूल्स जैसे psql की आवश्यकता है। –
विंडोज पर Cygwin के लिए सबसे अच्छा कॉम्बो, मैं, मिल गया है Cygwin psql साथ संयुक्त सामान्य विंडोज Postgres स्थापना है।
Cygwin psql (और अन्य आदेश-पंक्ति उपकरण) काफी आसानी से स्रोत से संकलित किया जा सकता। 9.2.4:
$ wget http://ftp.postgresql.org/pub/source/v9.2.4/postgresql-9.2.4.tar.bz2
$ tar xjf postgresql-9.2.4.tar.bz2
$ cd postgresql-9.2.4/
$ ./configure
$ cd src/bin/psql
$ make
यह एक psql.exe बाइनरी बनाता है जो सिगविन के साथ अच्छी तरह से काम करता है। हालांकि, डिफ़ॉल्ट रूप से, यह टीसीपी के बजाय यूनिक्स सॉकेट का उपयोग करके स्थानीय इंस्टेंस से कनेक्ट करने का प्रयास करता है।
$ ./psql -h localhost -U postgres
ले जाएँ अपने रास्ते पर किसी ऐसे स्थान को यह psql.exe (जैसे ~/bin) और संभवतः एक स्क्रिप्ट में लपेट जोड़ने के लिए '-h स्थानीय होस्ट: तो उदाहरण के लिए, होस्ट नाम और बल टीसीपी निर्दिष्ट करने के लिए -h का उपयोग 'सुविधा के लिए जब कोई अन्य तर्क प्रदान नहीं किया गया।
स्रोत डिफ़ॉल्ट को परिवर्तित करने के लिए संशोधित किया जा सकता है, लेकिन यह है कि वास्तविक काम लेता है;)
आज के रूप में, तुम बस cygwin में PostgreSQL-ग्राहक पैकेज स्थापित करने के लिए है:
- भागो अपने cygwin setup.exe फ़ाइल (इस अधिक संकुल जोड़ने कई बार चलाया जा सकता है)।
- प्रकार सर्च बॉक्स में PostgreSQL, PostgreSQL-ग्राहक और प्रेस स्थापित करने के लिए "अगला" का चयन करें।
अब तुम Cygwin टर्मिनल खोलने और चलाने के लिए टाइप करें psql कर सकते हैं!
cygwin (मैनुअल देखें postgres द्वारा समर्थित नहीं रह गया है "आधिकारिक तौर पर" है: "Cygwin एक उत्पादन सर्वर चलाने के लिए अनुशंसित नहीं है, और यह केवल Windows के पुराने संस्करणों पर चलने के लिए इस्तेमाल किया जाना चाहिए जहां देशी निर्माण काम नहीं करता है, जैसे कि विंडोज 98. ") क्या कोई विशिष्ट कारण है कि आप pgAdmin, या देशी विंडोज psql का उपयोग नहीं करना चाहते हैं? –
@RobertH वास्तव में कोई विशिष्ट कारण नहीं है, मुझे लगता है कि इसके आगे एक और pgAdmin प्रोग्राम रखने के बजाय साइगविन में सभी चीजों को करना सुविधाजनक होगा।वैसे, आपके द्वारा वर्णित देशी विंडोज psql क्या है? – chaonextdoor
@RobertH एक और बात, वास्तव में मैं psql का उपयोग कर सिगविन के माध्यम से हमारी उत्पादन साइट के डेटाबेस तक पहुंच सकता हूं। लेकिन जैसा कि मैं विंडोज़ हूं, मुझे लगता है कि शायद मुझे अपने स्थानीय डेटाबेस तक पहुंचने के लिए कुछ अतिरिक्त सेटअप चीज चाहिए। – chaonextdoor