Ubuntu पर PostgreSQL का पासवर्ड रीसेट करना [बंद]


91

Ubuntu में, मैंने PostgreSQL डेटाबेस स्थापित किया और सर्वर के लिए एक सुपरयूज़र बनाया।

यदि मैं पोस्टग्रैस्सल सुपरयुसर का पासवर्ड भूल गया, तो मैं इसे (पासवर्ड) उस उपयोगकर्ता के लिए कैसे रीसेट कर सकता हूं?

मैंने इसे अनइंस्टॉल करने की कोशिश की और फिर इसे फिर से स्थापित किया लेकिन पहले से बनाए गए सुपरयुसर को बरकरार रखा गया है।

जवाबों:


208

आप मशीन के व्यवस्थापक कर रहे हैं मान लिया जाये, उबंटू आप करने का अधिकार दिया गया है sudo किसी भी उपयोगकर्ता के रूप में किसी भी आदेश को चलाने के लिए।
यह मानते हुए कि आपने pg_hba.confफ़ाइल ( /etc/postgresql/9.1/mainनिर्देशिका में) में अधिकारों को प्रतिबंधित नहीं किया है , इसमें यह पंक्ति पहले नियम के रूप में होनी चाहिए:

# Database administrative login by Unix domain socket  
local   all             postgres                                peer

(फ़ाइल स्थान के बारे में: 9.1प्रमुख पोस्टग्रेज संस्करण और mainआपके "क्लस्टर" का नाम है। पोस्टग्रेज या गैर-डिफ़ॉल्ट नामों के नए संस्करण का उपयोग करने पर यह अलग होगा।pg_lsclusters अपने संस्करण / प्रणाली के लिए यह जानकारी प्राप्त करने के लिए कमांड का )।

वैसे भी, यदि pg_hba.confफ़ाइल में वह लाइन नहीं है , तो फ़ाइल को संपादित करें, इसे जोड़ें और सेवा को फिर से लोड करें sudo service postgresql reload

तब आपको psqlइस शेल कमांड के साथ पोस्टग्रेज सुपरसिर के रूप में लॉग इन करने में सक्षम होना चाहिए :

sudo -u postgres psql

एक बार psql के अंदर, SQL कमांड जारी करें:

ALTER USER postgres PASSWORD 'newpassword';

इस कमांड में, postgresएक सुपरयुसर का नाम है। यदि उपयोगकर्ता जिसका पासवर्ड भूल गया था ritesh, कमांड होगा:

ALTER USER ritesh PASSWORD 'newpassword';

संदर्भ: PostgreSQL 9.1.13 प्रलेखन, 19 अध्याय। ग्राहक प्रमाणीकरण

ध्यान रखें कि आपको अंत में एक एस के साथ पोस्टग्रेज टाइप करने की आवश्यकता है


2
मैंने आपके तरीके का उपयोग किया है मेरा सुपर यूजर नाम ritesh my pg_hba.conf है। जैसा कि आपने उल्लेख किया है। मैं कमांड चलाता हूं "ALTER USER PASSWORD 'newpassword' पोस्ट करता है;" कंसोल 'ALTER ROLE' दिखा रहा है। तब मैंने ctrl + c का उपयोग करके बाहर निकल लिया, उसके बाद मैं एक कमांड क्रूसर चलाता हूं। यह एक पासवर्ड इनपुट करने के लिए दिखा रहा है जिसे मैंने newpassword में दर्ज किया है, लेकिन यह मुझे त्रुटि दे रहा है "Createuser: डेटाबेस पोस्टर से कनेक्ट नहीं कर सकता: FATAL : उपयोगकर्ता प्रमाणीकरण "रितेश" "के लिए पासवर्ड प्रमाणीकरण विफल रहा है। उपयोगकर्ता बनाने के लिए और इस कमांड के लिए पासवर्ड क्या होना चाहिए ??"
रितेश मेहंदीरत्ता

यदि आप के लिए पासवर्ड बदलना चाहते हैं ritesh, तो ऊपर दिए गए SQL को बदल देंALTER USER ritesh PASSWORD 'newpassword'
डैनियल वेरिटे

आपको परिवर्तन pg_hba.conf के बाद पुनः आरंभ करना चाहिए ....
Mahdi

1
पुनः आरंभ करने की आवश्यकता नहीं है, बस pg_ctl पुनः लोड का उपयोग करें।
एचबीएन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.