एक ही समस्या, या समान होना। हो सकता है कि मैंने स्रोत से pgsql स्थापित किया हो, याद नहीं। हम अपनी खुद की सर्विस स्टार्ट फाइल बना सकते हैं। कैसे? चलो पता करते हैं!>>RTFM<<जो हम पहले से जानते हैं उससे शुरू करते हैं:
man service
जो हमें chkconfig(8) की ओर ले जाता है, इसलिए
man chkconfig
और यह हमें एक विकल्प देता है
chkconfig --add ${svcname}
हमारे द्वारा चुने गए नाम के तहत एक नई सेवा जोड़ने के लिए!
लेकिन ऐसा करने से पहले, हम वास्तव में यह जांचना चाहेंगे कि पहले से क्या है।
. के साथservice --status-all
हमें सभी ज्ञात सेवाओं और उनकी रन स्थिति की एक सूची मिलती है। और मैंने अपनी सूची में "पोस्टमास्टर" पाया, और जैसा कि आप जानते होंगे, कनेक्ट करने के लिए पोस्टग्रेएसक्यूएल मास्टर सर्वर को "पोस्टमास्टर" कहा जाता था। फिर भी, जब मैं कोशिश करता हूँ
service postmaster status
यह मुझे यह भी बताता है कि यह ऐसी सेवा नहीं जानता है। ठीक है, इसे भूल जाओ - अभी के लिए - चलो अपना खुद का बनाने के साथ आगे बढ़ते हैं! लेकिन मैं अभी भी देखना चाहता हूं कि रन-लेवल 3 (सामान्य सर्वर रन लेवल) में क्या है। तो मैं जाता हूँ
ls -1 /etc/rc.d/rc3.d |fgrep post
और वहाँ मैं पाता हूँ:"K36postgresql95"! तो, तदनुसार हमारी सेवा का नाम "postgresql95" होना चाहिए। कोशिश कर रहा हूँ:
service postgresql95 status
यह अब कहता है "पोस्टमास्टर को रोक दिया गया है"। सेवा --status-all और जब हम व्यक्तिगत रूप से इसके लिए पूछताछ करते हैं तो सेवा नाम सेवा कमांड में वास्तव में इसे संबोधित करने के लिए उपयोग किए जाने वाले नाम से भिन्न होता है। जानकर अच्छा लगा। रुचि के नाम के लिए /etc/rc.d खोजना काफी आसान है।
service postgresql95 start
अब सेवा शुरू करता है। और इसके साथ जांचें
psql -U ${pguser} ${pgdb}
और मुझे लगता है कि काम कर रहा है। तो अब मुझे बस इतना करना है कि सिस्टम बूट पर उस सेवा को ऑटो-स्टार्ट करने के लिए सक्षम करें
chkconfig --levels 3 postgresql95 on
और वह काम करता है, है ना?
पुनश्च:इससे कोई फर्क नहीं पड़ता कि मैं संस्करण 9.5 चला रहा हूं