পোস্টগ্রিজ ইনস্টল করার সময় আমি যে পাসওয়ার্ডটি দিয়েছি তা ভুলে গিয়েছি


205

আমি পোস্টগ্রিসের ডিফল্ট ব্যবহারকারীর পাসওয়ার্ডটি ভুলে গেছি বা ভুল টাইপ করেছি (ইনস্টলেশন চলাকালীন)। আমি এটি চালাতে সক্ষম হতে পারছি না এবং আমি নিম্নলিখিত ত্রুটিটি পেয়েছি:

psql: FATAL:  password authentication failed for user "hisham"
hisham-agil: hisham$ psql 

পাসওয়ার্ডটি পুনরায় সেট করার জন্য কী কী আছে বা আমি কীভাবে সুপারসার সুবিধার সাথে একটি নতুন ব্যবহারকারী তৈরি করব?

আমি পোস্টগ্র্রেসে নতুন এবং এটি প্রথমবার ইনস্টল করেছি installed আমি এটি রেলগুলির সাথে ব্যবহার করার চেষ্টা করছি এবং আমি ম্যাক ওএস এক্স লায়ন চালাচ্ছি।


1
আমি উত্তরগুলিতে এখনও মন্তব্য করতে পারি না, সুতরাং এটি এইভাবে করতে হবে। সায়ানগার্ল যা বলেছিল তা আমি করেছি, তবে এখনও আমার একটি পাসওয়ার্ড প্রবেশ করানো দরকার যা লগ ইন করার জন্য 'পোস্টগ্রিস' ছিল, তখন আমি পাসওয়ার্ডটি পুনরায় সেট করতে পারতাম
পাস্কেল

উত্তর:


359
  1. ফাইলটি সন্ধান করুন pg_hba.conf- এটি অবস্থিত হতে পারে, উদাহরণস্বরূপ /etc/postgresql-9.1/pg_hba.conf

    cd /etc/postgresql-9.1/

  2. ফিরে যাও

    cp pg_hba.conf pg_hba.conf-backup

  3. নিম্নলিখিত লাইনটি রাখুন (হয় কোনও প্রথম অসম্পূর্ণ রেখা বা একমাত্র হিসাবে):

নীচের সমস্ত (স্থানীয় এবং হোস্ট) উপস্থিতিগুলির জন্য, এক্সপ্যাক্ট রেপ্লিকেশন বিভাগটি যদি আপনার কোনও না থাকে তবে এটি অনুসরণ হিসাবে পরিবর্তন করতে হবে, কোনও এমডি 5 বা পিয়ার আউথিকেশন উপস্থিত থাকতে হবে না।

local  all   all   trust
  1. আপনার পোস্টগ্রিএসকিউএল সার্ভার পুনরায় চালু করুন (যেমন লিনাক্সে :)

    sudo /etc/init.d/postgresql restart

    যদি পরিষেবা (ডেমন) লগ ফাইলে রিপোর্টিং শুরু না করে:

    স্থানীয় সংযোগগুলি এই বিল্ড দ্বারা সমর্থিত নয়

    আপনার পরিবর্তন করা উচিত

    local all all trust

    প্রতি

    host all all 127.0.0.1/32 trust

  2. আপনি এখন যে কোনও ব্যবহারকারী হিসাবে সংযোগ করতে পারেন। সুপারইউজার হিসাবে সংযোগ করুন postgres(দ্রষ্টব্য, আপনার ইনস্টলেশনতে সুপারসারের নাম আলাদা হতে পারে some কিছু সিস্টেমে একে বলা হয় pgsql, উদাহরণস্বরূপ ))

    psql -U postgres

    অথবা

    psql -h 127.0.0.1 -U postgres

    (নোট করুন যে প্রথম কমান্ডের সাহায্যে আপনি সর্বদা স্থানীয় হোস্টের সাথে সংযুক্ত থাকবেন না)

  3. পাসওয়ার্ড পুনরায় সেট করুন ( 'সঙ্গে my_user_name প্রতিস্থাপন postgres যেহেতু আপনি রিসেট হয় postgres ব্যবহারকারী)

    ALTER USER my_user_name with password 'my_secure_password';

  4. পুরানোটিকে পুনরুদ্ধার করুন pg_hba.confকারণ এটি প্রায় রাখা খুব বিপজ্জনক

    cp pg_hba.conf-backup pg_hba.conf

  5. নিরাপদ সাথে চালানোর জন্য সার্ভার পুনরায় চালু করুন pg_hba.conf

    sudo /etc/init.d/postgresql restart

সেই পিজি_এইচএ ফাইলটি সম্পর্কে আরও পড়ুন : http://www.postgresql.org/docs/9.1/static/auth-pg-hba-conf.html


9
এবং তারপর শুরু psql? আমি এখনও একটি পাসওয়ার্ডের জন্য অনুরোধ করছি, এবং আমি এটি জানি না
কোডিবগস্টিন

4
এই উত্তরটি আমার পক্ষে কার্যকর হয়নি, আমি পদক্ষেপ 3 করার পরে, পরিষেবাটি আরম্ভ হবে না, আমি জানি না, সম্ভবত এটি ওএস (ডাব্লু 8) এর, এটি কেবল জিতবে না।
স্কারামোচে

3
উইন্ডোজের জন্য কেউ?
Mahesha999

2
Pg_hba.conf এ প্রবেশের ক্রমগুলি মনে রাখবেন। আপনি যদি ফাইলটির শেষে "স্থানীয় সমস্ত বিশ্বাস" যুক্ত করেন তবে এটি আগের মতো রেকর্ডগুলির সাথে মিলে যাবে বলে আপনি প্রত্যাশা মতো কাজ করবেন না। সুতরাং আপনি যা প্রত্যাশা রাখবেন তা ফাইলের শীর্ষে রাখুন।
তাগর

6
আপনি যদি এই ত্রুটিযুক্ত উইন্ডোতে থাকেন তবে @ সাইয়ানগার্লের উত্তরে স্ক্রোলিং চালিয়ে যান। 'বিশ্বাস' করার জন্য বিদ্যমান এন্ট্রিগুলির মেথডোড কলামগুলিকে কেবল মোডিফাই করুন, তারপরে আপনি এটি সম্পন্ন হলে এটি আবার পরিবর্তন করুন
sean.hudson

99

কমান্ড লাইন থেকে পোস্টগ্রিজের সাথে সংযোগ করার সময়, -h localhostকমান্ড লাইন প্যারামিটার হিসাবে যুক্ত করতে ভুলবেন না । যদি তা না হয় তবে পোস্টগ্রিজ পিইআর প্রমাণীকরণ মোড ব্যবহার করে সংযোগ দেওয়ার চেষ্টা করবে।

নীচে পাসওয়ার্ডটির পুনরায় সেট, পিইআর প্রমাণীকরণের সাথে একটি ব্যর্থ লগইন এবং একটি টিসিপি সংযোগ ব্যবহার করে একটি সফল লগইন দেখায়।

# sudo -u postgres psql
could not change directory to "/root"
psql (9.1.11)
Type "help" for help.

postgres=# \password
Enter new password:
Enter it again:
postgres=# \q

ব্যর্থ:

# psql -U postgres -W
Password for user postgres:
psql: FATAL:  Peer authentication failed for user "postgres"

সাথে কাজ করা -h localhost:

# psql -U postgres -W  -h localhost
Password for user postgres:
psql (9.1.11)
SSL connection (cipher: DHE-RSA-AES256-SHA, bits: 256)
Type "help" for help.

postgres=#

7
"-H" বিকল্প সম্পর্কিত টিপটির জন্য ধন্যবাদ, আমাকে সহায়তা করেছে।
বুঙ্কারবেউহনার ২৩:৩৩ এ

উইন্ডোজ cmd.exe এ
অনাবৃত

1
ম্যাকের সেরা উত্তর
মুহাম্মদ উমর

72

pg_hba.conf( C:\Program Files\PostgreSQL\9.3\data) ফাইল পরিবর্তন করা হয়েছে যেহেতু এই উত্তরগুলোর দেওয়া হয়। উইন্ডোজে আমার জন্য যা কাজ করেছে তা হ'ল ফাইলটি খুলতে এবং এ METHODথেকে পরিবর্তন md5করা trust:

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
# IPv6 local connections:
host    all             all             ::1/128                 trust

তারপরে, pgAdmin III ব্যবহার করে, আমি কোনও পাসওয়ার্ড ব্যবহার করে লগ ইন করেছি এবং postgres'গিয়ে ব্যবহারকারীর পাসওয়ার্ড পরিবর্তন করেছিFile -> Change Password


এটি কাজ করে না কারণ পিজএডমিন এখনও বর্তমান পাসওয়ার্ড চেয়েছে ... আমি 'বিশ্বাস' এ পুনরায় সেট করে পিজএডমিন পুনরায় চালু করেছি। CURRENT পাসওয়ার্ড টাইপ না করে পুনরায় সেট করতে পারবেন না ...
জিন বি।

1
একবার আপনি পদ্ধতিটি পরিবর্তন করে এটিকেtrust অনুসরণ করতে এবং সেন্টিমিডে পাসওয়ার্ড পরিবর্তন করতে পারেন
গিলাদ গ্রিন

12

লিনাক্সে কেবল একটি নোট, আপনি কেবল sudo su - postgresপোস্টগ্রিজ ব্যবহারকারী হওয়ার জন্য রান করতে পারেন এবং সেখান থেকে পিএসএইচএল ব্যবহার করে যা পরিবর্তন প্রয়োজন তা পরিবর্তন করতে পারেন।


3
আপনার পিএসকিএল চালানোর পরেও পাসওয়ার্ডের দরকার আছে
স্নো

8
  1. ফাইলটি সম্পাদনা করুন /etc/postgresql/<version>/main/pg_hba.confএবং নিম্নলিখিত লাইনটি সন্ধান করুন:

    local   all             postgres                                md5
  2. লাইনটি সম্পাদনা করুন এবং ফাইলটির md5শেষে এবং পরিবর্তন trustকরুন

  3. পোস্টগ্র্যাস্কিল পরিষেবাটি পুনরায় লোড করুন

    $ sudo service postgresql reload
  4. এটি কনফিগারেশন ফাইলগুলি লোড করবে। এখন আপনি শেলটিতে postgresলগইন করে ব্যবহারকারীকে পরিবর্তন করতে পারবেনpsql

    $ psql -U postgres
  5. postgresব্যবহারকারীর পাসওয়ার্ড আপডেট করুন

    alter user postgres with password 'secure-passwd-here';
  6. সম্পাদনা করুন ফাইল /etc/postgresql/<version>/main/pg_hba.confএবং পরিবর্তন trustপিছনে md5এবং ফাইলটি সংরক্ষণ

  7. পোস্টগ্র্যাস্কিল পরিষেবাটি পুনরায় লোড করুন

    $ sudo service postgresql reload
  8. পাসওয়ার্ড পরিবর্তন কাজ করছে তা যাচাই করুন

    $ psql -U postgres -W

উইন্ডোজ সমাধান দেওয়া কি এত কঠিন? সকলেই সুডো সহ লিনাক্স ব্যবহার করে না। উইন্ডোজ এ কীভাবে করব ??
জিন খ।

7

উইন্ডোজ 10-এ আমার কেবল এই সমস্যা ছিল এবং আমার ক্ষেত্রে সমস্যাটি ছিল যে আমি কেবল চলছিলাম psqlএবং এটি আমার উইন্ডোজ ব্যবহারকারীর নাম ("নাথান") দিয়ে লগ ইন করার চেষ্টা করছিল, তবে সেই নামটির সাথে পোস্টগ্র্রেএসকিউএল ব্যবহারকারী ছিল না, এবং এটি আমাকে বলছিল না।

সুতরাং সমাধান চালানোর জন্য ছিল psql -U postgresবরং তুলনায় psql, এবং তারপর পাসওয়ার্ড আমি ইনস্টলেশন এ প্রবেশ করেন।


5

সর্বশেষ পোস্টগ্রাস সংস্করণ (> 10) এর জন্য উইন্ডোজ ব্যবহারকারীর জন্য উত্তর যুক্ত করা,

আপনার পোস্টগ্রিসের ইনস্টলেশন অবস্থানে যান এবং অনুসন্ধান করুন pg_hba.conf, আপনি এটি খুঁজে পাবেন..\postgres\data\pg_hba.conf

নোটপ্যাড দিয়ে সেই ফাইলটি খুলুন, এই লাইনটি সন্ধান করুন,

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# IPv4 local connections: 
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5
#..

পদ্ধতিটি md5 থেকে বিশ্বাসে পরিবর্তন করুন,

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# IPv4 local connections: 
host    all             all             127.0.0.1/32            trust
# IPv6 local connections:
host    all             all             ::1/128                 trust
# ...

এখন আপনার এসকিউএল শেল (পিএসকিউএল) এ যান এবং সমস্ত কিছুই ফাঁকা ছেড়ে যান,

Server [localhost]:
Database [postgres]:
Port [8000]:
Username [postgres]: 

এটি এবার পাসওয়ার্ড চাইবে না এবং আপনি লগ ইন করবেন,

এখন এই লাইন চালান, ALTER USER yourusername WITH SUPERUSER

এখন আপনি শেলটি \ q দিয়ে ছেড়ে যেতে পারেন

আবার pg_hba.conf ফাইলটিতে যান এবং MTTHOD কে আবার বিশ্বাস থেকে এমডি 5 এ পরিবর্তন করুন এবং এটি সংরক্ষণ করুন।

এখন আপনার নতুন ব্যবহারকারী এবং পাসওয়ার্ড দিয়ে লগইন করুন এবং এর বৈশিষ্ট্যগুলির জন্য আপনি ডু চেক করতে পারেন।


1

উইন্ডোজ ইনস্টলেশন জন্য, একটি উইন্ডোজ ব্যবহারকারী তৈরি করা হয়। এবং "পিএসকিএল" বন্দরের সাথে সংযোগের জন্য এই ব্যবহারকারীর ব্যবহার করুন। আপনি যদি PostgreSQL ব্যবহারকারীর পাসওয়ার্ড পরিবর্তন করেন তবে এটি উইন্ডোজটির কোনও পরিবর্তন করবে না। নীচের কমান্ডলাইনটি কেবলমাত্র যদি আপনার কমান্ডলাইনে অ্যাক্সেস থাকে তবে কাজ করে।

পরিবর্তে আপনি উইন্ডোজ জিইউআই অ্যাপ্লিকেশন "সি: \ উইন্ডোজ \ system32 us lusrmgr.exe" ব্যবহার করতে পারেন। এই অ্যাপটি উইন্ডোজ দ্বারা নির্মিত ব্যবহারকারীদের পরিচালনা করে। সুতরাং আপনি এখন পাসওয়ার্ড পরিবর্তন করতে পারেন।


1

একই সমস্যা সমাধানের জন্য আমি যা করেছি তা হ'ল:

টার্মিনাল থেকে gedit সম্পাদক দিয়ে pg_hba.conf ফাইল খুলুন:

sudo gedit /etc/postgresql/9.5/main/pg_hba.conf

এটি পাসওয়ার্ড চাইবে। আপনার অ্যাডমিন লগইন পাসওয়ার্ড লিখুন। এটি ফাইলের সাথে জিডিট খুলবে। নিম্নলিখিত লাইনটি আটকে দিন:

host  all   all  127.0.0.1/32  trust

শুধু নিচের -

# Database administrative login by Unix domain socket

এটি সংরক্ষণ এবং বন্ধ করুন। টার্মিনালটি বন্ধ করুন এবং এটি আবার খুলুন এবং এই আদেশটি চালান:

psql -U postgres

আপনি এখন পিএসকিএল কনসোলে প্রবেশ করবেন। এখন এটি প্রবেশ করে পাসওয়ার্ড পরিবর্তন করুন:

ALTER USER [your prefered user name] with password '[desired password]';

যদি এটি বলে যে ব্যবহারকারীর অস্তিত্ব নেই তবে ALTERব্যবহারের পরিবর্তে CREATE

শেষ অবধি, আপনি যে নির্দিষ্ট লাইনটি পিজি_এইচবিতে আটকে দিয়েছেন তা সরিয়ে ফেলুন এবং সেভ করুন।


0

আপনি উইন্ডোতে থাকলে আপনি কেবল চালাতে পারেন

net user postgres postgres

এবং পোস্টগ্র্যাসে ব্যবহারকারী / পাসওয়ার্ড হিসাবে পোস্টগ্রিজের সাথে লগইন করুন


0

ব্যবহারকারীর হোম ডিরেক্টরিতে ফাইল .pgpass বা পিজিপিএএসএফআইফিল দ্বারা উল্লিখিত ফাইলটিতে সংযোগটির পাসওয়ার্ড প্রয়োজন হলে পাসওয়ার্ড থাকতে পারে (এবং অন্যথায় কোনও পাসওয়ার্ড নির্দিষ্ট করা হয়নি)। মাইক্রোসফ্ট উইন্ডোজে ফাইলটির নাম দেওয়া হয়েছে% APPDATA% \ postgresql \ pgpass.conf (যেখানে% অ্যাপডিটা% ব্যবহারকারীর প্রোফাইলে অ্যাপ্লিকেশন ডেটা সাব-ডিরেক্টরিকে বোঝায়)।

এই ফাইলটিতে নিম্নলিখিত ফর্ম্যাটটির লাইন থাকা উচিত:

আয়োজক নাম: পোর্ট: ডাটাবেসের: ব্যবহারকারীর নাম: পাসওয়ার্ড

(উপরের লাইনটি অনুলিপি করে এবং এর আগে # দিয়ে আপনি ফাইলটিতে একটি অনুস্মারক মন্তব্য যুক্ত করতে পারেন)) প্রথম চারটি ক্ষেত্রের প্রতিটিই আক্ষরিক মান বা * হতে পারে যা কোনও কিছুর সাথে মেলে। বর্তমান সংযোগের পরামিতিগুলির সাথে মেলে এমন প্রথম লাইনের পাসওয়ার্ড ক্ষেত্রটি ব্যবহৃত হবে। (অতএব, আপনি যখন ওয়াইল্ডকার্ড ব্যবহার করছেন তখন প্রথমে আরও সুনির্দিষ্ট এন্ট্রিগুলি রাখুন an লোকালহোস্টের একটি হোস্টের নাম স্থানীয় মেশিন থেকে আসা টিসিপি (হোস্টের নাম লোকালহোস্ট) এবং ইউনিক্স ডোমেন সকেট (pghost খালি বা ডিফল্ট সকেট ডিরেক্টরি) সংযোগের সাথে মেলে। স্ট্যান্ডবাই সার্ভারে, রেপ্লিকেশনটির একটি ডাটাবেসের নাম মাস্টার সার্ভারের সাথে করা স্ট্রিমিং প্রতিরূপ সংযোগগুলির সাথে মেলে। ডাটাবেস ক্ষেত্রের সীমিত উপযোগিতা কারণ ব্যবহারকারীদের একই ক্লাস্টারে সমস্ত ডাটাবেসের জন্য একই পাসওয়ার্ড রয়েছে।

ইউনিক্স সিস্টেমে .pgpass এর অনুমতিগুলি অবশ্যই বিশ্ব বা গোষ্ঠীতে অ্যাক্সেসকে অস্বীকার করতে হবে; chmod 0600। / .pgpass কমান্ড দ্বারা এটি অর্জন করুন। অনুমতিগুলি যদি এর চেয়ে কম কঠোর হয় তবে ফাইলটিকে উপেক্ষা করা হবে। মাইক্রোসফ্ট উইন্ডোজে, ধরে নেওয়া হয় যে ফাইলটি সুরক্ষিত কোনও ডিরেক্টরিতে সঞ্চিত আছে, তাই কোনও বিশেষ অনুমতি চেক করা হয় না।


এটি আমার পক্ষে কাজ করেছে, যেখানে পথটি সিটিতে প্রসারিত হয়েছে: \ ব্যবহারকারী \ <ব্যবহারকারী> \ অ্যাপডাটা \ রোমিং \ postgresql \ pgpass.conf। এছাড়াও পোস্টগ্রিএসকিউএল সার্ভারটি স্যুইচ অফ করা এবং সাহায্য করা বলে মনে হয়েছিল।
জিওডাটা

0

আপনি যদি ম্যাক ওএসে পোস্টগ্রেস্কল চালাচ্ছেন তবে এগুলি চেষ্টা করুন :

  1. Pg_hba.conf ফাইলটি সম্পাদনা করুন

  2. সুডো ভিআই / লাইব্রেরি / পোস্টগ্রেএসকিউএল / ৯.২ / ডেটা /পিজি_এইচবিএসিএনএফ

  3. সমস্ত ব্যবহারকারীদের ফাইলের নীচে "বিশ্বাস" করার জন্য "এমডি 5" পদ্ধতিটি পরিবর্তন করুন

  4. পরিষেবাটির নামটি সন্ধান করুন

  5. এলএস / গ্রন্থাগার / লঞ্চডেমনস

  6. Postgresql জন্য সন্ধান করুন

  7. Postgresql পরিষেবা বন্ধ করুন

  8. sudounchctl স্টপ com.edb.launchd.postgresql-9.2

  9. পোস্টগ্র্যাস্কল পরিষেবাটি শুরু করুন

  10. sudounchctl start com.edb.launchd.postgresql-9.2

  11. পোস্টগ্রিস হিসাবে পিএসএইচএল সেশন শুরু করুন

  12. পিএসএইচএল-ইউ পোস্টগ্রাস

  13. ('বিশ্বাস' সেটিংসের কারণে পাসওয়ার্ড জিজ্ঞাসা করা উচিত নয়)

  14. টাইপ করে পিএসকিএল সেশনে পাসওয়ার্ডটি রিসেট করুন

  15. ALTER ব্যবহারকারী পাসওয়ার্ড 'নিরাপদ-নতুন-পাসওয়ার্ড' দিয়ে পোষ্ট করে;

  16. \ কুই
  17. প্রবেশ করান

  18. Pg_hba.conf ফাইলটি সম্পাদনা করুন

  19. এটি আবার 'এমডি 5' এ স্যুইচ করুন

  20. পরিষেবাগুলি আবার চালু করুন


-1

এটি আমার জন্য উইন্ডোতে কাজ করেছে:

সি: \ প্রোগ্রাম ফাইলস \ পোস্টগ্র্রেএসকিউএল \ 9.3 \ ডেটাতে pg_hba.conf ফাইলের অবস্থানগুলি সম্পাদনা করুন।

# IPv4 local connections: host all all 127.0.0.1/32 trust

বিশ্বাস থেকে এমডি 5 এ পদ্ধতিটি পরিবর্তন করুন এবং উইন্ডোতে পোস্টগ্রিজ পরিষেবাটি পুনরায় চালু করুন।

এর পরে, আপনি পেগডমিন ব্যবহার করে পাসওয়ার্ড ছাড়াই পোস্টগ্রিজ ব্যবহারকারী ব্যবহার করে লগইন করতে পারেন। আপনি ফাইল-> পাসওয়ার্ড পরিবর্তন করে পাসওয়ার্ড পরিবর্তন করতে পারেন।

যদি পোস্টগ্রিজ ব্যবহারকারীর কাছে অতিরিক্ত ব্যবহারকারীর সুবিধা না থাকে তবে আপনি পাসওয়ার্ডটি পরিবর্তন করতে পারবেন না। এক্ষেত্রে, অতিরিক্ত ব্যবহারকারীর অ্যাক্সেসের সাথে অন্য কোনও ব্যবহারকারীর সাথে (পিএসএসকিউএল) লগইন করুন এবং ব্যবহারকারীদের ডান ক্লিক করে এবং বৈশিষ্ট্যসমূহ-> ভূমিকা সুবিধাগুলি বাছাই করে অন্যান্য ব্যবহারকারীদের সুবিধাদি প্রদান করুন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.