Postgresql: পাসওয়ার্ড প্রমাণীকরণ ব্যর্থ হয়েছে "postgres" ব্যবহারকারীর জন্য


431

আমি পোস্টগ্রেএসকিউএল 8.4 ইনস্টল করেছি, পোস্টগ্রিস ক্লায়েন্ট এবং প্যাগাডমিন ৩। কনসোল ক্লায়েন্ট এবং প্যাগাডমিন উভয়ের জন্য "পোস্টগ্রিজ" ব্যবহারকারীর জন্য প্রমাণীকরণ ব্যর্থ হয়েছে। আমি ব্যবহারকারীকে "পোস্টগ্র্রেস" এবং পাসওয়ার্ড "পোস্টগ্রিজ" হিসাবে টাইপ করেছি, কারণ এটি আগে কাজ করে। কিন্তু এখন প্রমাণীকরণ ব্যর্থ হয়েছে। আমি এই সমস্যাটি ছাড়াই দু'বার আগে এটি করেছি। আমার কি করা উচিৎ? আর কি হয়?

psql -U postgres -h localhost -W
Password for user postgres: 
psql: FATAL:  password authentication failed for user "postgres"
FATAL:  password authentication failed for user "postgres"

1
আমার ক্ষেত্রে সংযোগ ব্যর্থ হয়েছে কারণ পাসওয়ার্ডটি খুব জটিল ...
জেজেডি

3
এই পৃষ্ঠাতে নিচে পুরোপুরি পড়তে ভুলবেন না। এই কাজটি পেতে আমাকে বেশ কয়েকটি কাজ করতে হয়েছিল। প্রথমে ALTERপদক্ষেপ , তারপরে আমার pg_hba.confফাইলটি সম্পাদনা করা , তারপরে পোস্টগ্র্যাস পুনরায় চালু করা
elrobis


এছাড়াও নিশ্চিত করুন যে আপনার দুটি পোস্টগ্রাসের দৃষ্টান্ত চলছে না: একটি উইন্ডোজে, একটি ডকারে। পোর্টটি ইতিমধ্যে নেওয়া হয়েছে বলে ডকর আমাকে জানায়নি। সুতরাং, উইন্ডোজ মেশিন পোস্টগ্রিসের সাথে সংযুক্ত টুলটি, যেখানে ডকার পোস্টারগুলিতে সমস্ত কিছু ঠিক ছিল।
কোপ্পোর

উত্তর:


749

যদি আমি সঠিকভাবে মনে করি তবে ব্যবহারকারীর ডিফল্টরূপে উবুন্টুতে postgresকোনও ডিবি পাসওয়ার্ড সেট নেই । এর অর্থ, আপনি কেবলমাত্র ওএস ব্যবহারকারী ব্যবহার করে সেই অ্যাকাউন্টে লগইন করতে পারেনpostgres অ্যাকাউন্ট ।

ধরে নিই, আপনি যে rootবাক্সটি করতে পারেন তাতে আপনার অ্যাক্সেস রয়েছে:

sudo -u postgres psql

যদি এটি কোনও database "postgres" does not existsত্রুটির সাথে ব্যর্থ হয় তবে আপনি সম্ভবত উবুন্টু বা ডেবিয়ান সার্ভারে নেই :-) এই ক্ষেত্রে কেবল template1কমান্ডটি যুক্ত করুন:

sudo -u postgres psql template1

যদি এই কমান্ডগুলির মধ্যে কোনও ত্রুটিযুক্ত psql: FATAL: password authentication failed for user "postgres"হয়ে ব্যর্থ হয় তবে ফাইলটি পরীক্ষা করে দেখুন /etc/postgresql/8.4/main/pg_hba.conf: প্রথম অ-মন্তব্য লাইনের মতো এখানে একটি লাইন থাকতে হবে:

local   all         postgres                          ident

PostgreSQL এর নতুন সংস্করণগুলির জন্য identআসলে হতে পারে peer। এটা ঠিক আছে।

psqlশেলের ভিতরে আপনি ডিবি ব্যবহারকারীকে postgres একটি পাসওয়ার্ড দিতে পারেন :

ALTER USER postgres PASSWORD 'newPassword';

psqlটাইপ করে CtrlDবা কমান্ড দিয়ে শেলটি ছেড়ে দিতে পারেন \q

এখন আপনার পিজিএডমিনকে ডিবি সুপারভাইজারের জন্য একটি বৈধ পাসওয়ার্ড দিতে সক্ষম হওয়া উচিত এবং এটিও খুশি হবে। :-)


এটি আরও ভাল, আপনাকে ধন্যবাদ! পিএসকিএল কাজ করে। তবে এখনও প্যাগাডমিন 3 নিয়ে সমস্যা রয়েছে - এটি আমার সিস্টেমের রুট ব্যবহারকারীর জন্য আমাকে একটি পাসওয়ার্ড জিজ্ঞাসা করেছে। (আমার জন্য অদ্ভুত) pg_hba.conf ঠিক যেমন আপনি বলেছেন।
I159

আমি এর পরে '\ q' ব্যবহার করে কনসোলটি প্রস্থান করতে যুক্ত করব। আমাকে এটি খুঁজে পেতে কিছুটা সময় নিয়েছে :)
হাকুনিন

2
দ্রষ্টব্য, যে pg_hba.conf identপ্রথম পদক্ষেপে কাজ করার জন্য পোস্টগ্রিজ ব্যবহারকারী সেট আপ করতে হবে । আপনি যদি এমডি 5 বা অন্য কিছুতে ইতিমধ্যে সেট করে থাকেন তবে আপনি স্বতঃ-লগইন করতে পারবেন না।
সেরিন

80
খুব সুন্দর একটা। অন্যান্য নতুন ব্যবহারকারীর কাছে, ALTER ব্যবহারকারী লাইনের শেষে SEMICOLON ভুলে যাবেন না।
itols

3
@itsols আপনি বলেছিলেন: "খুব সুন্দর একটি। অন্যান্য নতুন ব্যবহারকারীদের কাছে, ALTER ব্যবহারকারী লাইনের শেষে SEMICOLONটি ভুলে যাবেন না" ... আপনি মাত্র চার ঘন্টা অগ্নিপরীক্ষা শেষ করেছেন !! আমি এখনই sooooo বোকা এবং কৃতজ্ঞ বোধ। :-D
হিমশিমজিম

147

কর্মীদের প্রতিক্রিয়া সঠিক, তবে আপনি যদি আরও স্বয়ংক্রিয় করতে চান তবে এটি করতে পারেন:

$ sudo -u postgres psql -c "ALTER USER postgres PASSWORD 'postgres';"

সম্পন্ন! আপনি ব্যবহারকারী = পোস্টগ্রিজ এবং পাসওয়ার্ড = পোস্টগ্র্যাগগুলি সংরক্ষণ করেছেন।

আপনি যদি উবুন্টু ব্যবহারকারীর পোস্টগ্রিসের পাসওয়ার্ড না পান তবে:

$ sudo passwd postgres


আপনার পাসওয়ার্ডে '!' এর মতো আকর্ষণীয় অক্ষর থাকলে সাবধান
ব্রায়ান পিটারসন

45

এটি হতাশাব্যঞ্জক, উপরের উত্তরগুলির বেশিরভাগই সঠিক তবে তারা pg_hba.conf ফাইলের পরিবর্তনগুলি প্রভাবিত হওয়ার আগে আপনাকে ডাটাবেস পরিষেবাটি পুনরায় চালু করতে হবে তা উল্লেখ করতে ব্যর্থ হয়েছে ।

সুতরাং আপনি যদি উপরে বর্ণিত পরিবর্তনগুলি করেন:

local all postgres ident

তারপরে রুট হিসাবে পুনরায় আরম্ভ করুন (পরিষেবাতে পোস্টগ্রেএসকিএল -9.2 পুনরায় আরম্ভের মতো এটির মতো) এখন আপনার ডিগ্রিটি ব্যবহারকারী পোস্টগ্রিস হিসাবে অ্যাক্সেস করতে সক্ষম হওয়া উচিত

$psql
psql (9.2.4)
Type "help" for help.

postgres=# 

আশা করি এটি নতুন পোস্টগ্রিজ ব্যবহারকারীদের জন্য তথ্য যুক্ত করে


26
উবুন্টু প্রকারে: sudo service postgresql restart
আন কিলজার

4
আরএইচইএল 7 ব্যবহারের জন্যsudo systemctl restart postgresql.service
স্পেশাল

1
ম্যাক সম্পর্কে কি?
অস্টিনটি

1
ম্যাকের জন্য, এই প্রশ্নটি এসও স্ট্যাকওভারফ্লো
রোহিত নন্দকুমার

ধন্যবাদ মিগুয়েল আমি পাসওয়ার্ডটি ম্যানুয়ালি দিয়েছি এবং পোস্টগ্রিস সার্ভারটি পুনরায় চালু না করা পর্যন্ত আমার পিজিএডমিন ডেটাবেসের সাথে সংযুক্ত হয়নি।
উস্তিন

20

Pg_hba.conf ফাইলটি সম্পাদনা করুন, উদাহরণস্বরূপ sudo emacs /etc/postgresql/9.3/main/pg_hba.conf

সমস্ত প্রমাণীকরণ পদ্ধতিতে এতে পরিবর্তন করুন trust। "পোস্টগ্রিজ" ব্যবহারকারীর জন্য ইউনিক্স পাসওয়ার্ড পরিবর্তন করুন। সার্ভার পুনরায় চালু করুন। লগইন করুন psql -h localhost -U postgresএবং সদ্য সেট ইউনিক্স পাসওয়ার্ডটি ব্যবহার করুন। যদি এটি কাজ করে তবে আপনি pg_hba.conf ফাইলটিকে ডিফল্ট মানগুলিতে পুনরায় সেট করতে পারেন।


1
আপনি যদি পুরোপুরি আটকে যান তবে এটি একমাত্র গ্যারান্টিযুক্ত পদ্ধতি। বিশ্বাসের জন্য সমস্ত পদ্ধতি পরিবর্তন করুন, ডিবি পুনরায় চালু করুন, তারপরে রুট হিসাবে: sudo su - postgresপরবর্তী পোস্ট / ফিক্স / আনসেট পাসওয়ার্ড পোস্টগ্রিস ডিবি (এবং শেল মধ্যে, প্রয়োজন হলে), তারপরে সুরক্ষিত md5বা identপদ্ধতিতে পুনরুদ্ধার করুন এবং মান পুনরায় স্টার্ট করুন। যাইহোক, সেন্ট / রেডহ্যাট 9.4-এ ফাইলটি এখানে অবস্থিত:/var/lib/pgsql/9.4/data/pg_hba.conf
পাপাক

17

যারা প্রথমবার এটি ব্যবহার করছেন এবং পাসওয়ার্ড কী তা সম্পর্কিত কোনও তথ্য নেই তারা নীচের পদক্ষেপগুলি অনুসরণ করতে পারেন (ধরে নিবেন আপনি উবুন্টুতে রয়েছেন):

  1. ফাইল খুলুন pg_hba.conf মধ্যে/etc/postgresql/9.x/main

     sudo vi pg_hba.conf 

    2. নীচের লাইনটি সম্পাদনা করুন

     local   all             postgres                                peer

    প্রতি

     local   all             postgres                                trust
  2. সার্ভারটি পুনরায় চালু করুন

      sudo service postgresql restart
  3. পরিশেষে আপনি চিত্রের মতো পাসওয়ার্ডের প্রয়োজন ছাড়াই লগইন করতে পারবেনপরিশেষে আপনি চিত্রের মতো পাসওয়ার্ডের প্রয়োজন ছাড়াই লগইন করতে পারবেন

আরও তথ্যের জন্য এখানে রেফ করুন


12

আপনি যদি পোস্টগ্রিস শেলকে পোস্টগ্রিজ ব্যবহারকারী হিসাবে লগইন করতে চেষ্টা করছেন তবে নিম্নলিখিত কমান্ডগুলি ব্যবহার করতে পারেন।

পোস্টগ্রিজ ব্যবহারকারীতে স্যুইচ করুন

# su - postgres

পিএসএইচএল-এ লগইন করুন

# psql

আশা করি এইটি কাজ করবে


3
su - postgresউবুন্টু ১.0.০৪-তে পোস্টগ্র্যাস্কল 9.5-এ একটি পাসওয়ার্ড চেয়েছে
প্রশান্ত চন্দ্র

3
su - postgresঅফিসিয়াল ফেডোরা ডকুমেন্টেশনের পরামর্শ অনুসারে কমান্ডটি হ'ল তবে আমিও একটি পাসওয়ার্ড প্রম্পট পাই। বৃত্তাকার পেতে যে আমি এই অনুসৃত postgres ফোরাম ইমেল গৃহীত উত্তর এখানে একই কমান্ড ব্যবহার করে: sudo -u postgres psql। ডাটাবেস সার্ভার আরম্ভ এবং শুরু করতে ভুলবেন না।
icc97

11

-W পরামিতিটি ব্যবহার না করার চেষ্টা করুন এবং পাসওয়ার্ডটি ফাঁকা রেখে দিন। কখনও কখনও ব্যবহারকারী নো-পাসওয়ার্ড দিয়ে তৈরি করা হয়।

যদি এটি কাজ না করে তবে পাসওয়ার্ডটি পুনরায় সেট করুন। এটি করার বিভিন্ন উপায় রয়েছে তবে এটি অনেক সিস্টেমে কাজ করে:

$ su root
$ su postgres
$ psql -h localhost
> ALTER USER postgres with password 'YourNewPassword';

7

থাম্বের নিয়ম হিসাবে: আপনি পোষ্টগ্রিজ ব্যবহারকারীর জন্য কোনও পাসওয়ার্ড কখনই সেট করবেন না

আপনার যদি পিজএডমিন থেকে একটি সুপারসউসার অ্যাক্সেসের প্রয়োজন হয় তবে অন্য একটি সুপারসুসার তৈরি করুন। এইভাবে, যদি সেই সুপারইউসারটির শংসাপত্রগুলি আপোস করা হয় তবে আপনি সর্বদা প্রকৃত ডাটাবেস হোস্টে প্রবেশ করতে পারেন এবং ব্যবহার করে সুপারউজারটিকে ম্যানুয়ালি মুছে ফেলতে পারেন

sudo -u postgres -c "DROP ROLE superuser;"

1
থাম্বের এই নিয়মের কারণ কী?
Gershom

2
যাতে আপনি কখনই আপনার সমস্ত সুপারিউজারকে ধারণা না রাখতে পারেন।
আরডিলগুলেজ

1
পোস্টগ্রিজের জন্য কীভাবে একটি পাসওয়ার্ড সেট করা সমস্ত সুপারিউজারকে আপোস করতে পারে?
গেরশম

4
পাসওয়ার্ড নির্ধারণের ফলে সমস্ত সুপারইউসারকে আপোস করা হয় না তবে পাসওয়ার্ডটি সেট না করা গ্যারান্টি দেয় যে আপনি কখনই সমস্ত সুপারউসারকে আপস করেননি। কারণটি হ'ল: আপনি যখন পাসওয়ার্ডটি সেট করবেন না, তখন ব্যবহারকারীকে পোস্টগ্রাস করার জন্য যে কোনও পাসওয়ার্ড লগইন করার প্রচেষ্টা অস্বীকার করা হবে তবে আপনি এখনও বিশ্বাসের মাধ্যমে এটিকে নিজেরাই ব্যবহার করতে পারবেন।
আরডিলগুলেজ

7

একবার আপনি যখন আপনার পোস্টগ্রিজ শেল এ চলে যান তবে এই কমান্ডটি প্রবেশ করুন

postgres=# \password postgres

এই কমান্ডটি প্রবেশ করার পরে আপনাকে আপনার পাসওয়ার্ড সেট করতে অনুরোধ করা হবে, কেবল পাসওয়ার্ড সেট করুন এবং তারপরে চেষ্টা করুন।


3

আপনি যখন পোস্টগ্রেস্কল ইনস্টল করেন তখন ব্যবহারকারী পোস্টগ্রিসের জন্য কোনও পাসওয়ার্ড সেট করা হয় না, আপনাকে কমান্ডটি ব্যবহার করে স্পষ্টভাবে ইউনিক্সে সেট করতে হবে:

sudo passwd postgres

এটি আপনার সুডো পাসওয়ার্ড জিজ্ঞাসা করবে এবং তারপরে আপনাকে নতুন পোস্টগ্রিজ ব্যবহারকারীর পাসওয়ার্ডের জন্য অনুরোধ করবে। সূত্র


0

আমি কেবল যুক্ত করতে চেয়েছিলাম যে আপনার পাসওয়ার্ডের মেয়াদ শেষ হয়ে গেছে কিনা তাও আপনার পরীক্ষা করা উচিত।

দেখুন Postgres পাসওয়ার্ড প্রমাণীকরণ ব্যর্থ বিস্তারিত জানার জন্য।


1
ভবিষ্যতে লিঙ্কটি আর বিদ্যমান না থাকলে দয়া করে কিছু বিশদ এবং সেই লিঙ্কটি কী সরবরাহ করে তার সংক্ষিপ্তসার যুক্ত করুন। অন্যথায় এটি কেবলমাত্র নিম্ন-মানের / লিঙ্ক উত্তর হিসাবে পতাকাঙ্কিত হতে পারে।
ট্যানার


0

এখানে কিছু সংমিশ্রণ যা আমি লগইন করার চেষ্টা করেছি:

# login via user foo
psql -Ufoo -h localhost

sudo -u postgres psql postgres

# user foo login to postgres db
psql -Ufoo -h localhost -d postgres

0

আমারও একই সমস্যা ছিল. উবুন্টু আমাকে সুপারসারের জন্য কোনও পাসওয়ার্ড দিয়ে কনসোলে লগ ইন করতে রেখেছিল। আমি যখন পিএইচকিএল লাইন কমান্ড -h লোকালহোস্টের সাথে সংযুক্ত থাকি।

আমি এটি "লোকালহস্ট: 8080 / মাইজেএসপিসাইটলগইন" -ও পর্যবেক্ষণ করেছি: মারাত্মক: "ব্যবহারকারী" ব্যবহারকারীর সাথে অভিযোজন ত্রুটি।

pg_hba.conf ঠিক ছিল।

আমি লক্ষ করেছি যে একই পরিষেবাতে পোস্টগ্রাসের দুটি সংস্করণ ছিল।

সমাধান করা - ইনসিল সংস্করণ আনইনস্টল করা।


0

আমি একই সমস্যা ছিল। কোনও ডাটাবেস অ্যাক্সেস করার সময় আমি পাসওয়ার্ড আপডেট করার পরে প্রম্পটের নীচে পেয়ে যাচ্ছিলাম "পিজিএডমিনে" পোস্টগ্রিজ "ব্যবহারকারীর জন্য পাসওয়ার্ড প্রমাণীকরণ ব্যর্থ হয়েছে


সমাধান:

  1. পোস্টগ্রিজ সার্ভার বন্ধ করুন
  2. প্যাগাডমিন পুনরায় চালান
  3. pgadmin পাসওয়ার্ড চাইবে।
  4. উল্লিখিত ব্যবহারকারীর বর্তমান পাসওয়ার্ড লিখুন

আশা করি এটি আপনার সমস্যার সমাধান করবে

এখানে চিত্র বর্ণনা লিখুন


-1

আমি আশা করি এটি আপনাকে অল্প সময়ের জন্য সহায়তা করবে। আপনি বেলো কমান্ড ব্যবহার করে পোস্টগ্রিস স্কুয়েল এর পাসওয়ার্ড পরিবর্তন করতে পারেন।

হুকুম

sudo -u পিএসএইচএল পোস্ট করুন

এবং এরপরে আপনি পাসওয়ার্ডটি আপডেট করতে পারেন

হুকুম

পরিবর্তিত ব্যবহারকারীর পাসওয়ার্ড পোস্ট 'YOUR_NEW_PASSWORD';


1
: আপনার উত্তর শুধু তথ্য, যে ইতিমধ্যেই যোগ করা হয়েছে রয়েছে stackoverflow.com/a/7696398/8283469
এল Guthardt
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.