अन्य उत्तरों के अलावा ध्यान दें कि डिफ़ॉल्ट रूप से Postgres को आपके ऑपरेटिंग सिस्टम खाते के आधार पर प्रमाणीकरण के साथ यूनिक्स सॉकेट के माध्यम से कनेक्शन स्वीकार करने के लिए कॉन्फ़िगर किया गया है, इसीलिए psql
ठीक काम करता है और पासवर्ड की आवश्यकता नहीं है।
JDBC कनेक्शन पासवर्ड प्रमाणीकरण के साथ TCP/IP पर बनाए जाते हैं, इसलिए आपको pg_hba.conf
को संशोधित करने की आवश्यकता है इसलिए। उदाहरण के लिए, यह लाइन पासवर्ड प्रमाणीकरण वाले सभी उपयोगकर्ताओं के लिए एक ही मशीन से सभी डेटाबेस में टीसीपी/आईपी कनेक्शन की अनुमति देती है:
host all all 127.0.0.1/32 md5
इस लाइन को जोड़ने के बाद jdbc:postgresql:databasename
काम करना चाहिए।
संपादित करें: आप यूनिक्स सॉकेट पर जेडीबीसी कनेक्शन नहीं बना सकते क्योंकि पोस्टग्रेएसक्यूएल जेडीबीसी ड्राइवर केवल टीसीपी/आईपी पर काम कर सकता है। JDBC कनेक्शन बनाते समय आपके द्वारा उपयोग किया जाने वाला पासवर्ड आपके उपयोगकर्ता को दिया गया पासवर्ड है। यदि आपके पास यह नहीं है, तो आप इसे असाइन कर सकते हैं, उदाहरण के लिए, ALTER USER
. का उपयोग करके आज्ञा। देखें 19.3. प्रमाणीकरण के तरीके
।
यह भी देखें: