দ্রুত সমাধান
সমস্যাটি হ'ল এটি peerআপনার বর্তমান ব্যবহারকারীর নামের ভিত্তিতে স্থানীয় প্রমাণীকরণ সম্পাদন করার চেষ্টা করছে । আপনি যদি একটি পাসওয়ার্ড ব্যবহার করতে চান তবে আপনাকে অবশ্যই এর সাথে হোস্টনামটি নির্দিষ্ট করতে হবে -h।
pg_dump dbname -U username -h localhost -F c
ব্যাখ্যা
এটি আপনার নীচের কারণে pg_hba.conf
local all all peer
host all all 127.0.0.1/32 md5
এটি পোস্টগ্রিসকে peerস্থানীয় ব্যবহারকারীদের জন্য প্রমাণীকরণ ব্যবহার করতে বলে যার জন্য আপনার বর্তমান সিস্টেমের ব্যবহারকারীর নামটি মিলিয়ে নিতে পোস্টগ্রিসের ব্যবহারকারীর নাম প্রয়োজন। দ্বিতীয় লাইনটি হোস্টনাম ব্যবহার করে সংযোগগুলিকে বোঝায় এবং আপনাকে md5পদ্ধতির মাধ্যমে কোনও পাসওয়ার্ড দিয়ে অনুমোদনের অনুমতি দেবে ।
আমার পছন্দের বিকাশ কনফিগারেশন
দ্রষ্টব্য : এটি কেবলমাত্র একক-ব্যবহারকারীর ওয়ার্কস্টেশনে ব্যবহার করা উচিত। এটি কোনও উত্পাদন বা মাল্টি-ইউজার মেশিনে একটি বৃহত সুরক্ষা দুর্বলতার দিকে নিয়ে যেতে পারে।
যখন কোনও স্থানীয় পোস্টগ্রেস উদাহরণগুলির বিরুদ্ধে বিকাশ করা হয় তখন আমি আমার স্থানীয় প্রমাণীকরণ পদ্ধতিতে পরিবর্তন করতে চাই trust। এটি কোনও পাসওয়ার্ড ছাড়াই কোনও ব্যবহারকারী হিসাবে স্থানীয় ইউনিক্স সকেটের মাধ্যমে পোস্টগ্রিজের সাথে সংযোগ স্থাপনের অনুমতি দেবে। এটি কেবল peerউপরের দিকে পরিবর্তন করে trustপোস্টগ্রিজ লোড করেই করা যেতে পারে ।
# Don't require a password for local connections
local all all trust