পিএসকিএল সার্ভারের সাথে সংযোগ করতে পারেনি: এই জাতীয় কোনও ফাইল বা ডিরেক্টরি নেই, 5432 ত্রুটি?


114

আমি psqlআমার ভ্যাগ্র্যান্ট মেশিনে চালানোর চেষ্টা করছি , তবে আমি এই ত্রুটিটি পেয়েছি:

psql: could not connect to server: No such file or directory

Is the server running locally and accepting connections on 
Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

দ্রষ্টব্য: ভ্যাগ্রান্ট ১.৯.২ বাক্স: উবুন্টু / বিশ্বাসযোগ্য ,৪, https://atlas.hashicorp.com/ubuntu/boxes/trusty64

পোস্টগ্রিজ ইনস্টল ও চালানোর জন্য আমি সম্পাদনা কমান্ডগুলি ব্যবহার করেছি:

  • sudo apt-get update
  • sudo apt-get install postgresql
  • sudo su postgres
  • psql -d postgres -U postgres

1
এই উত্তরটি আমার পক্ষে কাজ করেছিল: Askubuntu.com/a/824325/733901
ব্রুনো লুভেম আজারেদো

উত্তর:


156

আমার pg_hba.conf ফাইলের কনফিগারেশন সম্পর্কিত (এটিতে অবস্থিত /etc/postgresql/9.6/main) আমার একই সমস্যা হয়েছে । দয়া করে মনে রাখবেন যে আমি ব্যবহার করছি 9.6 হ'ল পোস্টগ্র্যাস্কল সংস্করণ।

ত্রুটিটি নিজেই পোস্টগ্রেস্কিলের একটি ভুল কনফিগারেশনের সাথে সম্পর্কিত, যার ফলে সার্ভারটি শুরু হওয়ার আগেই ক্রাশ হয়।

আমি এই নির্দেশাবলী অনুসরণ পরামর্শ:

  1. ব্যবহার করে postgresql পরিষেবা চালু রয়েছে তা নিশ্চিত করুন sudo service postgresql start
  2. pg_lsclustersআপনার টার্মিনাল থেকে চালান
  3. আপনি যে ক্লাস্টারটি চালাচ্ছেন তা পরীক্ষা করুন, আউটপুটটি এমন কিছু হওয়া উচিত:

    সংস্করণ - ক্লাস্টার পোর্ট স্থিতির মালিকের ডেটা ডিরেক্টরি

    9.6 ------- প্রধান - 5432 অনলাইন পোস্টগ্রিজ /var/lib/postgresql/9.6/main

    '---' চিহ্নগুলি উপেক্ষা করুন কারণ সেগুলি কেবল বিন্যস্তকরণের জন্য ব্যবহৃত হচ্ছে। গুরুত্বপূর্ণ তথ্য হ'ল সংস্করণ এবং ক্লাস্টার। সার্ভারটি স্থিতি কলামে চলছে কিনা তাও আপনি পরীক্ষা করতে পারেন।

  4. সংস্করণ এবং গুচ্ছ থেকে তথ্যটি অনুলিপি করুন এবং এর মতো ব্যবহার করুন: pg_ctlcluster <version> <cluster> startসুতরাং আমার ক্ষেত্রে সংস্করণ 9.6 এবং ক্লাস্টার 'প্রধান' ব্যবহার করে এটি হবেpg_ctlcluster 9.6 main start
  5. যদি কিছু ভুল হয়, তবে পোস্টগ্র্যাসকিএল একটি লগ তৈরি করে, এটি অ্যাক্সেস করা যেতে পারে /var/log/postgresql/postgresql-<version>-main.log, সুতরাং আমার ক্ষেত্রে সম্পূর্ণ কমান্ডটি হবে sudo nano /var/log/postgresql/postgresql-9.6-main.log
  6. আউটপুটটি দেখানো উচিত যে ত্রুটিটি কী।

    2017-07-13 16:53:04 বিআরটি [32176-1] লোগো: অবৈধ প্রমাণীকরণ পদ্ধতি "সমস্ত"
    2017-07-13 16:53:04 বিআরটি [32176-2] চুক্তি : কনফিগারেশন ফাইলের 90 লাইন "/ ইত্যাদি /postgresql/9.5/main/pg_hba.conf "
    2017-07-13 16:53:04 বিআরটি [32176-3] ফ্যাটাল: pg_hba.conf লোড করা যায়নি

  7. ত্রুটিগুলি ঠিক করুন এবং পোস্টগ্র্যাস্কিল পরিষেবা পুনরায় চালু করুন sudo service postgresql restartএবং এটি ঠিক হওয়া উচিত।

আমি এটি খুঁজতে অনেক অনুসন্ধান করেছি, ক্রেডিট এই পোস্টে যায় ।

ভাগ্য সুপ্রসন্ন হোক!


1
দুর্দান্ত গাইড। ব্যাপক ব্যাখ্যায় পূর্ণ!
সালাথিয়েল জেনেস

37

আমার একই সমস্যা ছিল তবে এখানে উত্তরগুলির কোনও উত্তর নেই।

আমি এটি কীভাবে স্থির করেছি (ম্যাক)

  • এর সাথে পোস্টগ্রেস্কল শুরু করার চেষ্টা করুন pg_ctl -D /usr/local/var/postgres start
  • দেখুন ত্রুটির বার্তা এরকম কিছু বলেছেন FATAL: could not open directory "pg_tblspc": No such file or directory
  • অনুপস্থিত ডিরেক্টরিটি তৈরি করুন mkdir /usr/local/var/postgres/pg_tblspc
  • আপনি সমস্ত অনুপস্থিত ডিরেক্টরি তৈরি না করা পর্যন্ত প্রথম ধাপ থেকে পুনরাবৃত্তি করুন
  • হয়ে গেলে এবং তারপরে আবার পোস্টগ্র্যাস্কল শুরু করার চেষ্টা করার সময় এটি বলতে পারেFATAL: lock file "postmaster.pid" already exists
  • পোস্টমাস্টার.পিড মুছুন :rm /usr/local/var/postgres/postmaster.pid
  • এর সাথে পোস্টগ্রিজ শুরু করুন: pg_ctl -D /usr/local/var/postgres start
  • সম্পন্ন ✨

13

আমি যখনই এই প্রশ্নটি পেয়েছি তখন যেমন আমি হারিয়েছিলাম এবং হতাশাবোধ বোধ করছি এমন কারও জন্য এটি পোস্ট করছি। দেখে মনে হয় যে কখনও কখনও কিছু psotgresql- সম্পর্কিত কনফিগার ফাইল সম্পাদনা করে, কেউ ঘটনাক্রমে ফাইলটির অনুমতিগুলি পরিবর্তন করতে পারে:

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

নোট করুন কীভাবে pg_hba.conf মূলের সাথে সম্পর্কিত এবং ব্যবহারকারীরা এটি পড়তেও পারেন না। এটি পোস্টগ্রিজকে এই ফাইলটি খুলতে সক্ষম করতে না পারে এবং তাই সার্ভারটি আরম্ভ করতে সক্ষম হবে না, মূল প্রশ্নের মধ্যে দেখা ত্রুটিটি ছুঁড়ে ফেলেছে।

দৌড় দিয়ে

sudo chmod +r pg_hba.conf

আমি এই ফাইলটি পোস্টগ্রিজ ব্যবহারকারীর কাছে আবার চালনার পরে আবার অ্যাক্সেসযোগ্য করতে সক্ষম হয়েছি

sudo service postgresql start

সার্ভারটি আবার চালু করতে সক্ষম হয়েছিল।


হ্যাঁ, এটি আমার সমস্যা ছিল এবং লগগুলিতে এটি চিহ্নিত করা হয়নি (বা এটি যদি আমি বুঝতে পারি না তবে)।
ইমেজ

আমার সাথে ঠিক কী ঘটেছে তা নয়, তবে কোনও কারণে নেটওয়র্ক সার্ভিস পুরো ডিরেক্টরি কাঠামোর লেখার সুযোগ হারিয়েছে। এই উত্তরটি আমাকে সঠিক দিকে ইঙ্গিত করেছে তাই উর্ধ্বে।
ব্র্যাড ম্যাথিউজ

5

/etc/postgresql/9.6/main/postgresql.confএই পোর্টটি বরাদ্দ করা হচ্ছে কি তা শো করে? আমার ডিফল্ট জুবুন্টু লিনাক্স ইনস্টল করার সময়, আমার কোনও কারণ হিসাবে আমি মনে করতে পারি সেরা কারণে পোর্ট = 5433 দেখিয়েছে, তবে আমি একই ফাইলটিতে listen_addresses = 'localhost'লাইনটি মন্তব্য করেছি যা লাইনটি বলেছে এবং অবিচ্ছিন্ন করেছে listen_addresses = '*'। সুতরাং সম্ভবত শুরু এবং সেখানে চেক। আশা করি এইটি কাজ করবে.


4

কমান্ড ব্যবহার করুন:

rm -rf /usr/local/var/postgres && initdb /usr/local/var/postgres -E utf8

9
এটি কি পুরো ডাটাবেস সরিয়ে দেয় না? আমি মনে করি যে সতর্কতার একটি শব্দটি যথাযথ হবে।
d33tah

1
ধন্যবাদ @ টকার ওয়াটস এবং @ গৌরব ভার্মা। আমি উভয় সমাধানের চেষ্টা করে আমার সমস্যাটি সমাধান করেছি এবং এই আদেশটি যুক্ত করেছি pg_ctl -D /usr/local/var/postgres -l logfile start
নিয়ঙ্গাবো

4

এটি আমার পক্ষে কাজ করে:

pg_ctl -D /usr/local/var/postgresql@9.6 stop;
brew services stop postgresql@9.6;
brew services start postgresql@9.6;

4

এই দুটি পদক্ষেপটি ম্যাকের জন্য এটি সমাধান করেছে:

rm /usr/local/var/postgres/postmaster.pid
brew services restart postgresql

সম্পাদনা করুন:

আপনি যদি এই সমস্যার মুখোমুখি হন (@ ভাগ্যগুয়ে 73 দ্বারা প্রতিবেদন করা): psql: FATAL: database "postgresql" does not exist

আপনি চালাতে পারেন

brew postgresql-upgrade-database

এটা ঠিক করতে.


ধন্যবাদ মানুষ, আমি আপনার নির্দেশাবলী অনুসরণ করে একটি মারাত্মক সাথে সংযোগ করতে পারি না: "পিএসকিএল: ফ্যাটাল: ডাটাবেস"
পোস্টগ্র্যাস্কিল

হু আশ্চর্য, এটি সর্বদা আমার জন্য কাজ করে। আপনি কি এটি সমাধান করতে পরিচালিত?
নিকডপ

কোন উদ্বেগ নেই, এটি আসলে ঠিক আছে। আমি সবেমাত্র 'ব্রিউ পোস্টগ্র্যাস্কেল-আপগ্রেড-ডাটাবেস'
চালিয়েছিলাম

1
খুশী তুমি ঠিক করেছ! আপনি যদি আপত্তি না করেন তবে আমি উত্তরটিতেও এটি যুক্ত করব, যদি অন্য কেউ একই সমস্যার মুখোমুখি হয়। ধন্যবাদ
নিকড্প

3

Zsh এর মধ্যে:

rm -rf /usr/local/var/postgres && initdb /usr/local/var/postgres -E utf8

এই একমাত্র কাজ যা আমার জন্য কাজ করেছিল অসংখ্য ঘন্টা শুটিংয়ের পরে।


2

আপনার ডাটাবেস পরিচালককে খুলুন এবং এই স্ক্রিপ্টটি কার্যকর করুন

update pg_database set datallowconn = 'true' where datname = 'your_database_name';

2

আমি /etc/hostsফাইলটিতে কিছু পরিবর্তন করেছি বলে আমার কাছেও একই ঘটনা ঘটেছিল । এটিতে ফিরে আসার পরে এটি 127.0.0.1 localhostআমার পক্ষে কাজ করেছিল।


2

কেবলমাত্র আপনার pgsql সরাসরি সংস্করণ পুনরায় ইনস্টল করুন sudo এপটি-পোস্ট ইনস্টল করুন পোস্টগ্রেসকিএল -9.5 (নতুন ইনস্টল করার আগে আপনাকে অবশ্যই প্যাকেজটি সরিয়ে ফেলতে হবে)



2

আমার ক্ষেত্রে এটি লকফিল postmaster.idছিল যা সমস্যার কারণে শেষ সিস্টেম ক্রাশের সময় সঠিকভাবে মোছা হয়নি। এটি মুছে ফেলা sudo rm /usr/local/var/postgres/postmaster.pidএবং পোস্টগ্রিজ পুনরায় চালু করা সমস্যার সমাধান করে।


1

আমি যখন ভিএম-তে এসকিউএল ডিবি তৈরি করি তখন আমার একই ত্রুটি হয়েছিল। আমি shared_buffers = 200MBআমার মোট র‌্যামের /etc/postgresql/9.3/main/postgresql.conf এর ডিফল্ট মান পরিবর্তন করেছি value ঠিক আছে, আমি ভিএম-তে আসলে সেই র‌্যামটি বরাদ্দ করতে ভুলে গিয়েছিলাম। যখন আমি একটি নতুন ডাটাবেস তৈরি করার আদেশটি দিয়েছি তখন আমি একই ত্রুটি পেয়েছি।

চালিত বন্ধ, শিশুকে তার বোতল (র‌্যাম) এবং প্রেস্টো দিয়েছিল, এটি কাজ করে।


1

আমি সর্বশেষ pg_basebackup ব্যাকআপ ফাইল থেকে আমার ডাটাবেস পুনরুদ্ধার করার সময় আমি এই ত্রুটি পেয়েছি। এর পরে যখন আমি ডাটাবেস (পিএসকিএল) সংযুক্ত করার চেষ্টা করছিলাম তখন আমি একই ত্রুটি পেয়েছিলাম। ত্রুটিটি সমাধান করা হয়েছিল, যখন আমি pg_hba.conf ফাইল আপডেট করেছি এবং যেখানেই "পিয়ার" প্রমাণীকরণ ছিল সেখানে আমি "এমডি 5" দিয়ে প্রতিস্থাপন করেছি এবং পোস্টগ্র্রেস পরিষেবাদি পুনরায় চালু করেছি। এর পরে, সমস্যার সমাধান করা হয়েছিল।


1

কিছুক্ষণ আগে আমারও একইরকম সমস্যা হয়েছিল। 5 টিরও বেশি পরামর্শ দেওয়ার চেষ্টা করার পরে আমি সিদ্ধান্ত নিয়েছি বেসিকগুলিতে ফিরে যাব এবং শুরু থেকেই শুরু করব। যার অর্থ আমার পোস্টগ্র্যাসকিএল ইনস্টলেশন অপসারণ এবং পোস্টগ্র্যাসকিএল পুনরায় ইনস্টল করার পরে এই গাইড অনুসরণ করা। https://help.ubuntu.com/lts/serverguide/postgresql.html


1

এই ত্রুটিটি আমার ম্যাক মিনি আন-প্লাগ হওয়ার পরে ঘটেছিল (তাই বাধ্য হয়ে শাটডাউন), এবং এটি ঠিক করার জন্য আমাকে যা করতে হয়েছিল তা পুনরায় চালু হয়েছিল


1

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

lsof -i | grep 'post'

তাহলে আপনি জানতে পারবেন কোন বন্দরটি শুনছে।

psql -U postgres -p "port_in_use"

পোর্ট বিকল্প সহ, উত্তর হতে পারে। আপনি PSQL ব্যবহার করতে পারেন।


1

আমার মাঝে মাঝে একই সমস্যা থাকে তবে বেশিরভাগ ম্যাকোস আপগ্রেডের পরে। বন্ধ করা এবং নতুন সংস্করণে স্থানান্তর করা সাধারণত আমার জন্য এটি ঠিক করে দেয় (আপনার সংস্করণ অনুসারে পরিবর্তন করুন)। সুতরাং প্রথমে আপনার পোস্টগ্র্যাসিকেল আপগ্রেড করুন

brew services stop postgresql@12
brew services start postgresql@12
brew postgresql-upgrade-database

এটি বেশিরভাগ ক্ষেত্রে একটি অস্থায়ী সমাধান তবে যেহেতু আমি এর থেকে ভাল সমাধান খুঁজে পাইনি এটি আমার পক্ষে কাজ করে।


ব্রিউ পোষ্টগ্রেস্কএল-আপগ্রেড-ডাটাবেস হ'ল শেষ পর্যন্ত আমার পক্ষে আরও কিছুর পরে চেষ্টা
করলাম

1

যদি উপরের উত্তরগুলির মধ্যে কোনটি আপনার পক্ষে কাজ করে না, তবে দয়া করে এটি ব্যবহার করে দেখুন,

অনেকেই এই সমস্যার অনেক সমাধান উল্লেখ করেছেন! তবে সকলেই ভুলে গিয়েছিলেন যে, যখন আপনার ডিস্কে পর্যাপ্ত জায়গা না থাকে বা আপনার জন্য বরাদ্দ করা স্থানটি postgresপূর্ণ হয় তখন একই সমস্যা দেখা দেয়

আপনার সিস্টেম স্টোরেজটি পরীক্ষা করুন, যদি এটি পুরোপুরি কিছু জায়গা খালি করে দেয়! তারপরে আপনার পোস্টগ্রিজ পুনরায় চালু করুন sudo service postgresql restartবা একটি স্টপ করুন এবং sudo service posgresql stopতারপরে শুরু করুনsudo service postgresql start

এটি সমস্যার সমাধান করবে, এটি আমার জন্য সমাধান হয়েছে


0

আমার ম্যাকে পোস্টগ্রিজ 11 নিয়েও আমার একই সমস্যা আছে। পুনঃসূচনা করার পরে প্রতিবারই আমি এই ত্রুটি পেয়েছি

psql: could not connect to server: No such file or directory

Is the server running locally and accepting connections on 
Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

একটি অস্থায়ী ফিক্স হিসাবে আমি না

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