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


136

কারও কারও মত আমি এই ত্রুটিটি পেয়ে যাচ্ছি যখন আমি রেক ডিবি চালাই: আমার প্রকল্পে মাইগ্রেট করুন বা এমনকি আমার রুবির অন্বেষণের জন্য বেশিরভাগ ডাটাবেসের কাজগুলি চেষ্টা করুন 3.2 অ্যাপ্লিকেশনগুলিতে।

PGError (সার্ভারের সাথে সংযোগ করতে পারেনি: এই জাতীয় কোনও ফাইল বা ডিরেক্টরি নেই the সার্ভারটি স্থানীয়ভাবে চলছে এবং ইউনিক্স ডোমেন সকেটে "/tmp/.s.PGSQL.5432" এ সংযোগ গ্রহণ করছে?

আমি ইনস্টল পোস্টগ্রি সঙ্গে Homebrew একটি দীর্ঘ সময় আগে এবং একটি প্রয়াস হওয়া ইনস্টলেশন নিম্নলিখিত MongoDB সম্প্রতি আমার পোস্টগ্রি ইনস্টল একই হয়েছে না হয়েছে। আমি OS X v10.6 স্নো লেপার্ড চালাচ্ছি।

কী ভুল হয়েছে এবং আমি কীভাবে আরও ভাল করে বুঝতে পারি যে পোস্টগ্রেএসকিউএল কীভাবে হয় এবং আমার ম্যাকে সেটআপ করা উচিত?

এখনও অবধি (আমি মনে করি) এটি আমাকে বলে যে PostgreSQL চলছে না (?)?

ps -aef|grep postgres                                                                                                   (ruby-1.9.2-p320@jct-ana) (develop) 
  501 17604 11329   0   0:00.00 ttys001    0:00.00 grep postgres

তবে এটি কি আমাকে বলে যে পোস্টগ্রিসকিউএল চলছে?

 launchctl load -w /usr/local/Cellar/postgresql/9.1.4/homebrew.mxcl.postgresql.plist                                                        (ruby-1.9.2-p136) 
homebrew.mxcl.postgresql: Already loaded

আমি কিভাবে এটা ঠিক করব? আমি কি দেখছি না?

পিএস: ~/Library/LaunchAgentsদুটি পোস্টগ্রাইএসকিউএল .লিস্ট ফাইল অন্তর্ভুক্ত করে। আমি এটি প্রাসঙ্গিক কিনা তা নিশ্চিত নই।

org.postgresql.postgres.plist
homebrew.mxcl.postgresql.plist

আমি নিম্নলিখিত চেষ্টা করেছিলাম এবং নীচের হিসাবে একটি ফলাফল পেয়েছি।

$ psql -p 5432 -h লোকালহোস্ট

psql: could not connect to server: Connection refused
    Is the server running on host "localhost" (127.0.0.1) and accepting
    TCP/IP connections on port 5432?
could not connect to server: Connection refused
    Is the server running on host "localhost" (::1) and accepting
    TCP/IP connections on port 5432?
could not connect to server: Connection refused
    Is the server running on host "localhost" (fe80::1) and accepting
    TCP/IP connections on port 5432?

আমি পড়ছি যেহেতু এটি ঘটছে কারণ ওএস এক্স পোস্টগ্রিএসকিউএল এর নিজস্ব সংস্করণ ইনস্টল করে এবং হোমব্রিউ একটি ভিন্ন জায়গায় আলাদা সংস্করণ ইনস্টল করে এবং পোস্টগ্রাইএসকিউএল কমান্ডগুলি / টিএমপি / ডিরেক্টরিতে সন্ধান করছে। আপনাকে স্ট্যাক ওভারফ্লোতে আরও অনুসন্ধান করতে হবে, তবে মূলত আপনি পোস্টগ্রাইএসকিউএলকে সিমিলিং করেন যাতে সেই টিএমপি পাথের দিকে তাকানো যে কোনও কিছুই আসলে আসল পথটি খুঁজে পায়, যদি তা বোঝা যায়।

এটি সেই লিঙ্কটি যেখানে আমি চেষ্টা করার জন্য আরও কয়েকটি জিনিস পেয়েছি, বিশেষ করে উপরের মত সিমিলিংকটি করা , ম্যাক ওএসএক্স লায়ন পোস্টগ্রেস /tmp/.s.PGSQL.5432-তে সংযোগ গ্রহণ করে না । আমি এখনও আশা করি যে কোনও ব্যক্তি ওএস এক্সে পোস্টগ্রেএসকিউএল ইনস্টল করার পিছনে ধারণাগুলির একটি সুন্দর ব্যাখ্যা এক সাথে রাখে এবং এটি এত কঠিন কেন।

সমস্যা সমাধানে সহায়তার জন্য সর্বশেষ অন্তর্দৃষ্টি:

$ which psql // This tells you which PostgreSQL you are using when you run $ psql. 

তারপরে চালান:

$ echo $PATH

আমলে নেওয়ার মূল বিষয়টি হ'ল:

ওএস এক্স সিস্টেমের পোস্টগ্রিজ এসকিউএল-এর পাথের আগে আপনি যে পোস্টগ্র্রেএসকিউএল অনুলিপিটি চালাতে চান তার জন্য পাথ প্রবেশের বিষয়টি নিশ্চিত করুন।

এটি একটি মূল প্রয়োজনীয়তা যা সিদ্ধান্ত নিচ্ছে যে কোন পোস্টগ্রিসকিউএল চালিত হয় এবং যা আমাকে বলা হয়েছিল তা এই সমস্যার বেশিরভাগ দিকে নিয়ে যায়।


আপনি কি কখনও এর জন্য কোনও সমাধান খুঁজে পেয়েছেন? আমি দেখছি আপনি একটি চিহ্নিত করেন নি। এগুলির কোনওটিই আমাকে সহায়তা করে না।
Andras Gyomrey

এটি এখনও বেশিরভাগ ভোডো এবং এটির কাজ পেতে অদ্ভুত অবতার। আমি আমার [সম্পাদনা 2] আরও কিছু পরামর্শের সাথে একটি লিঙ্ক এবং আমার সম্পাদনা মতামত অনুসারে কীভাবে সিমলিংকটি যুক্ত করব তা যুক্ত করেছি। সিমলিংকটি শেষ পর্যন্ত আমার জন্য কাজ করেছিল তবে আমি মনে করি যে আমি ওখানেই পোস্টগ্রাগগুলি এবং হোমব্রিউটি আনইনস্টল ও পুনরায় ইনস্টল করেছি, ঠিক কী পার্থক্যটি ঘটেছে তা সঠিকভাবে জানতে পারা যায় না। শুভকামনা। এই প্রশ্নের 15,000 মতামত সহ আপনি যদি নতুন কিছু আবিষ্কার করেন তবে ফিরে প্রতিবেদন করুন এটি প্রচুর লোককে ব্যথা দেয়!
অভিব্যক্ত

@ আন্দ্রেস জ্যোম্রে আমি অস্ট্রেলিয়ায় রেলস্যাম্প 15 থেকে ফিরে এসেছি এবং লোকেরা বলেছিল যে আপনার পথের ফাইলটি ডান পেতে একটি কী ছিল, এটি ব্যাখ্যা করতে আমি উপরের 3 সম্পাদনাতে সম্পাদনা করছি।
বিবর্তিত

মনে রাখবেন যে কোনও কিছুকে বোঝা হিসাবে লঞ্চক্টেল রিপোর্ট করা অগত্যা এর অর্থ এটি শেষ এবং চলছে does বিকল্প হিসাবে আপনার bigsql.comএকবার দেখা উচিত ; ম্যাকে কাজ করে এবং একটি ভাল পরিচালনা ইউআই রয়েছে।
জিম ন্যাসবি

উত্তর:


102

আপনার পোস্টগ্রিজ ডিরেক্টরিতে কোনও পোস্টমাস্টার.পিড নেই তা পরীক্ষা করুন probably /usr/local/var/postgres/

এটি সরান এবং সার্ভার শুরু করুন।

চেক করুন - https://github.com/mperham/lunchy হ'ল লঞ্চাক্টেলের জন্য দুর্দান্ত একটি মোড়ক।


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

2
আমার পক্ষে কাজ করেছেন, তবে নবীনদের জন্য, কেউ কেন এটি এবং কী নিরাপদ তা ব্যাখ্যা করতে পারে
আলেকজান্ডার মিলস

58

আপনি ওএস এক্স এ থাকলে " পোস্টগ্রিস.এপ " আরও ভাল ফিক্স


এখানে ঠিক আছে:

  1. ডাটাবেস বন্ধ করুন
  2. cd /var
  3. rm -r pgsql_socket
  4. ln -s /tmp pgsql_socket
  5. chown _postgres:_postgres pgsql_socket
  6. PostgreSQL পুনরায় আরম্ভ করুন (আপনার কম্পিউটার নয়)

আরো তথ্য "পাওয়া যাবে লায়ন দেব পূর্বরূপ 1 PostgreSQL 9.0.3। "।


2
ত্রুটিগুলি আমার জন্য ফিরে এসেছে এবং এই ফিক্সটি কোনও উপকারে আসেনি। আমার মনে হচ্ছে আমি কোন অন্ধকার ঘরে ঘুরে বেড়াচ্ছি আসলে কী হচ্ছে তা বোঝার জন্য এবং নিজেকে ঠিক করার একটি প্রক্রিয়া। আমি কীভাবে এই সমস্যাটি নির্ধারণ এবং সমাধান করতে পারলাম তা আপনার পক্ষে ব্যাখ্যা করা সম্ভব হবে?
অভিব্যক্ত

আমার জন্য কাজ কর. /tmpপোষ্টগ্রেসে আবদ্ধ হতে কিছুটা অদ্ভুত লাগছে, তবে ওহে :)
আরদেভোস

postgresapp কাজ করে, তবে কেন আমি টার্মিনালে আমার সার্ভারটি শুরু করতে পারি না? আমি এই অ্যাপ্লিকেশনটি ছাড়ার পরে, সমস্যাটি প্রত্যাশার মতো ফিরে আসবে।
হাকুনামি

এটি আমার পক্ষে কাজ করেছে তবে নোট করুন যে আপনাকে অবশ্যই মূল হতে হবে বা # 2 - 4 চালানোর জন্য sudo ব্যবহার করতে হবে Also এছাড়াও, দয়া করে # 5 পদক্ষেপটি স্পষ্ট করুন - আপনার কেবল কম্পিউটারটি নয় পোস্টগ্রিজ পুনরায় চালু করতে হবে।
এমপেলঝেরম্যান

2
মূলধনপত্রগুলি এর চেয়ে ভাল উত্তর দেয় না। হোমব্রিউ (পরিষেবাদি।) এর মাধ্যমে
পোস্টগ্র্যাস

55

আমার জন্য, এটি কাজ করে

rm /usr/local/var/postgres/postmaster.pid

9
আমার ক্ষেত্রে, pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
পিডটি

4
আমাকে brew services restart postgresql
পোস্টগ্র্যাসগুলি

2
আমি No such file or directoryআমার ক্ষেত্রে ডক্টর এনভির সাথে রয়েছি
সরজ

2
আরএম: /usr/local/var/postgres/postmaster.pid: এই জাতীয় কোনও ফাইল বা ডিরেক্টরি নেই
নর্জা

13

আপনার উল্লিখিত ত্রুটির জন্য এটি আমার পক্ষে কাজ করেছিল। কি এক এগুলোর:

  1. ইনস্টল করার সময় postgres.confআপনি যদি ডিফল্ট পোর্ট ছাড়া অন্য কিছু ব্যবহার করেন তবে সম্ভবত ফাইলটিতে নির্দিষ্ট হওয়া আপনার ডিফল্ট পোর্টটি সম্ভবত পরিবর্তন করুন 5432

  2. এতে পোর্ট নম্বর পরিবর্তন করুন postgresql.confএবং ডিবি সার্ভারটি পুনরায় চালু করুন।

  3. psqlপুরো কমান্ডটি পরিবর্তে টাইপ করুন:

    psql -p 5432 -h localhost   
    • সার্ভার নাম এবং পোর্ট নং

1. আমি মনে করি আমার ইনস্টলটি ডিফল্ট অনুসারে হত।
অভিব্যক্ত

২. আমি কী এটি পরিবর্তন করতে পারব, বন্দর পরিবর্তন করার কোনও প্রভাব?
অভিব্যক্ত

3. উপরের 3 থেকে আমার আউটপুট যুক্ত।
অভিব্যক্ত

বিকল্প 3 কাস্টম পোর্টের সাথে কাজ করেছে। কারণ আমি একাধিক পিজি সার্ভার ইনস্টল করেছি (পোস্টগ্র্যাসকিউএল 9.1, 9.2 এবং 9.3), আমার ডান পিএসএইচএল-তেও নির্দেশ করতে হয়েছিল।
গিপসপ করুন

11

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

$ gem uninstall pg
$ brew uninstall postgresql

/ ইউএসআর / স্থানীয় নেভিগেশন অনুমতি স্থির করতে নিম্নলিখিত স্ক্রিপ্টটি ডাউনলোড এবং চালান: * https://gist.github.com/rpavlik/768518

$ ruby fix_homebrew.rb

তারপরে আবার পোস্টগ্রিস ইনস্টল করুন এবং রত্ন রচনা: *

$ brew install postgresql  
$ initdb /usr/local/var/postgres -E utf8

লগইন রান চলাকালীন postgresql শুরু করতে:

$ ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents 

অথবা ম্যানুয়ালি শুরু করুন।

পিজি রত্ন ইনস্টল করুন

$ gem install pg

আমি আশা করি সাহায্য করেছে


থেকে brew info postgres:ARCHFLAGS="-arch x86_64" gem install pg
rrdevos

1
এটি ডিবিতে রেকর্ড মুছে ফেলবে না?
কিবায়েক

initdb /usr/local/var/postgres -E utf8কাজ করে। একটি গুচ্ছ ধন্যবাদ।
ক্রিস জিয়ন

8

পোস্টগ্রিসকে 9.3.x এ আপগ্রেড করার সময় আমার এই সমস্যা হয়েছিল I আমার জন্য দ্রুত সমাধানটি হ'ল আমার আগে যে 9.2.x সংস্করণ ছিল তা ডাউনগ্রেড করা (নতুন ইনস্টল করার দরকার নেই)।

$ ls /usr/local/Cellar/postgresql/
9.2.4
9.3.2
$ brew switch postgresql 9.2.4
$ launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
<open a new Terminal tab or window to reload>
$ psql

" হোমব্রেইউ সূত্রের নির্দিষ্ট সংস্করণ ইনস্টল করুন? " সমস্যাটি সমাধানের বিকল্প উপায়গুলির সাথে আরও অনেক বিস্তৃত ব্যাখ্যা সরবরাহ করে।


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

আমি এটি দরকারী এবং প্রাসঙ্গিক বলে মনে করি, যদিও সম্ভবত সরাসরি নয়। তিনি কেবল সংস্করণ ব্যবহার করে, যা একটি মোটামুটি সাধারণ সরঞ্জাম, এবং সংস্করণগুলি সমাধান করে সমস্যার সমাধান করেছেন, এখন পর্যন্ত, দুর্দান্ত, লিঙ্কটি বারউয়ের জন্য নির্দিষ্ট আরও জটিল সমস্যায় পরিণত হয়েছে, তবে, আমি আপনার প্রশ্নটি এর মান দেখতে পাচ্ছি ওপির প্রশ্নের প্রসঙ্গে।
wkhatch

7

পোস্টগ্রেস আপগ্রেড করে আমি এটি ঠিক করেছি।

brew update
brew upgrade

তারপরে আমাকে নতুন বড় সংস্করণের সাথে সামঞ্জস্য রাখতে ডাটাবেসগুলিও আপগ্রেড করতে হয়েছিল, কারণ আমি 10 থেকে 11 এ আপগ্রেড করেছি।

brew postgresql-upgrade-database

(উত্স https://github.com/facebook/react-native/issues/18760#issuecomment-410533581 )


আমি এই ত্রুটিটি পেয়েছি ত্রুটি: কোনও পোস্টগ্র্যাস্কল 9.3 নেই। * সংস্করণ ইনস্টল করা আছে!
নুরজা

5

সুতরাং এখানে প্রচুর সমস্যার জন্য, দেখে মনে হচ্ছে যে লোকেরা ইতিমধ্যে পিএসকিএল চালাচ্ছিল এবং তাদের অপসারণ করতে হয়েছিল postmaster.pid। তবে আমার সমস্যাটি হয়নি কারণ আমার সিস্টেমে পোস্টগ্রাগগুলি সঠিকভাবে ইনস্টল করা হয়নি।

এখানে একটি সমাধান যা ম্যাক ওএসএক্স যোসমেটে আমার জন্য কাজ করেছে

  1. আমি http://postgresapp.com/ এ গিয়ে অ্যাপটি ডাউনলোড করেছি।
  2. আমি অ্যাপ্লিকেশন / ডিরেক্টরিতে অ্যাপ্লিকেশন সরানো হয়েছে
  3. আমি এটি b PATH এ যুক্ত করে .bashrc বা .bash_profile বা .zshrc এ যুক্ত করে: export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/latest/bin
  4. আমি অ্যাপ্লিকেশন ডিরেক্টরি থেকে পোস্টগ্রাগগুলি চালিয়ে আবার কমান্ডটি চালিয়েছি এবং এটি কার্যকর হয়েছে।

আশাকরি এটা সাহায্য করবে! Toodles!

এছাড়াও, এই উত্তরটি আমাকে সবচেয়ে বেশি সহায়তা করেছে: https://stackoverflow.com/a/21503349/3173748


এই পোড়ানোর ইনস্টলেশনের চেয়ে পোস্টগ্র্রেস অ্যাপ্লিকেশনটির দিকে কী নির্দেশ করে না? এটি আপনাকে কিছু সহায়ক প্যাকেজগুলি থেকে বিচ্ছিন্ন করতে পারে (উদাহরণস্বরূপ, আপনি পোস্টগ্র্রেস অ্যাপ্লিকেশনটির জন্য ইনস্টল করতে পারবেন না যা আমাকে অন্তহীন দুঃখ দিয়েছে এবং এখন আমি এখানে আছি)
allthesignals

4

আপনি যখন চালনা করেন: psql -p 5432 -h লোকালহোস্ট এটি লুপব্যাক ড্রাইভার ব্যবহার করে না তবে প্রকৃত সকেট ব্যবহার করে এবং সুতরাং সকেট সংযোগগুলি গ্রহণ করার জন্য আপনার পোস্টগ্রিজ কনফিগার করতে হবে। সুতরাং যদিও প্যাগাডমিন এবং অন্যান্য ক্লায়েন্টরা কাজ করতে পারে তবে পিএসএইচএল চলবে না।

আপনাকে postgresql.conf ফাইল এবং pg_hba.conf ফাইল উভয়ই পরিবর্তন করতে হবে যাতে আসল সকেটের সাথে সংযোগের অনুমতি দেয়। এটি দূরবর্তী আইপি থেকে সংযোগেরও অনুমতি দেয় যার কারণে এটি ডিফল্টরূপে অক্ষম করা হয়।

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

ps -ef | grep postmaster

এই দুটি ফাইল হ'ল-ডি ডিরেক্টরি (সম্ভবত / ইউএসআর / স্থানীয় / পিএসএসকিএল / ডেটা)।

Postgresql.conf ফাইলের জন্য, শ্রবণ_প্রেমাকে অস্বচ্ছন্দ করুন এবং এটিকে পরিবর্তন করুন:

listen_address = '*'

Pg_hba.conf এর জন্য লাইনটি যুক্ত করুন:

host all all 0.0.0.0/0 md5

2

আমি ম্যাক বা হোমব্রিউকে সত্যিই জানি না, তবে আমি পোস্টগ্রিসএসকিউএলটি খুব ভাল জানি।

আপনি পোস্টগ্রিএসকিউএল থেকে লগগুলি কোথা থেকে শুরু করার চেষ্টা করছে এবং পোস্টগ্রিএসকিউএল এর জন্য সকেট ডিরেক্টরিটি কী তা নির্ধারণ করতে চান। ডিফল্টরূপে আপনি যখন পিজি তৈরি করেন সকেট ডিরেক্টরিটি / tmp / হয়। আপনি যখন পিজি তৈরি করেন এবং আপনি যখন পিজি শুরু করেন, আপনি যদি তা পরিবর্তন না করেন, আপনি / টেম্পে সকেট ফাইলটি দেখতে সক্ষম হবেন: ls -al / tmp

সকেট ফাইলটি একটি "।" দিয়ে শুরু হয়, সুতরাং আপনি এটি '-a' থেকে ls এর সাথে দেখতে পাবেন না।

যদি আপনি সেখানে কোনও সকেট না দেখেন এবং আপনি পিএস অ্যাভাক্স | থেকে কিছুই দেখতে পান না গ্রেপ পোস্টগ্রাস করে, তবে পিজি সম্ভবত চলমান নেই, বা সম্ভবত এটি ওএসএক্স-ইনস্টলড। যা ঘটতে পারে তা হ'ল আপনি লোকালহোস্টে 5432 পোর্টে শোনাতে দ্বন্দ্ব পেয়ে যাচ্ছেন- নেটসট্যাট -আনপ ব্যবহার করুন, কিছু আছে কিনা 5432 এ শুনছেন। যদি কোনও ম্যাক ওএসএক্স পিজি ইতিমধ্যে সেই বন্দরে শুনছে তবে তা সম্ভবত সমস্যা হও

আশা করি এইটি কাজ করবে. আমি শুনেছি হোমব্রিউ জিনিসগুলিকে কিছুটা কুৎসিত করতে পারে এবং এর পরিবর্তে ভিএম ব্যবহার করতে উত্সাহিত করার জন্য আমি অনেক লোকের সাথে কথা বলেছি।


এই অবদান জন্য ধন্যবাদ। যদি এটি আপনাকে আরও কিছুটা ব্যাকগ্রাউন্ড দিতে সহায়তা করে, পোস্টগ্রাগ ইনস্টল করার সময় হোমব্রিউ কেবল এই স্ক্রিপ্টটি চালায়। github.com/Homebrew/homebrew-core/blob/master/Formula/… আমি আশা করি আপনি এটি সন্ধান করতে পারেন এবং সম্ভবত আপনি যা খুঁজে পান তার থেকে আরও অন্তর্দৃষ্টি ভাগ করে নিতে পারেন। আমার মনে হয় যে লোকেদের যা প্রয়োজন তা হ'ল তারা এই ত্রুটিটি কেন পাচ্ছেন তা ডিবাগ করার একটি সহজ উপায় যাতে তারা জানেন যে কী পদক্ষেপ নিতে হবে।
অভিব্যক্ত

আমি সেই স্ক্রিপ্টটি কী বুঝতে পারি তার উপর ভিত্তি করে একটি "ভার" ডিরেক্টরিতে একটি "পোস্টগ্রস.লগ" রয়েছে, সম্ভবত হোমব্রেডব্লিউপিআরএফআইএক্স এর অধীনে। সেই লগ ফাইলটিতে পিজি শুরু করার চেষ্টা করার তথ্য অন্তর্ভুক্ত থাকবে (এটি কোনও কারণে শুরু করতে ব্যর্থ হয় কিনা তা সহ)। 5432 বন্দরটিতে অন্য প্রক্রিয়া শোনার কারণে পিজি শুরু করতে ব্যর্থ হতে দেখায় এমন উদাহরণ উদাহরণ রয়েছে:
স্টিফেন ফ্রস্ট

2016-12-19 09: 11: 59.582 EST [20669] লগ: আইপিভি 4 সকেটে বাঁধাই করতে পারেনি: ঠিকানা ইতিমধ্যে ব্যবহারে রয়েছে 2016-12-19 09: 11: 59.582 ইএসটি [20669] ইঙ্গিত: অন্য পোস্টমাস্টার ইতিমধ্যে 5432 বন্দরে চলছে? ? যদি না হয়, কয়েক সেকেন্ড অপেক্ষা করুন এবং আবার চেষ্টা করুন। 2016-12-19 09: 11: 59.582 EST [20669] সতর্কতা: "লোকালহোস্ট" এর জন্য শোনার সকেট তৈরি করতে পারেনি 2016-12-19 09: 11: 59.582 EST [20669] FATAL: কোনও টিসিপি / আইপি সকেট তৈরি করতে পারেনি 2016 -12-19 09: 11: 59.582 EST [20669] এলওজি: ডাটাবেস সিস্টেম বন্ধ হয়ে গেছে
স্টিফেন ফ্রস্ট

আরও, দেখে মনে হচ্ছে যে স্ক্রিপ্টটি ডিফল্ট সকেট ডিরেক্টরি পরিবর্তন করে না, যাতে এটি / tmp / হওয়া উচিত। আপনি পিজি তথ্য ডিরেক্টরিতে (যা {HOMEBREW_PREFIX} / var / postgres বলে মনে হচ্ছে) পোস্টগ্রিসক্ল.এলএনএফ ফাইলের জন্য দেখতে এবং "ইউনিক্স_সকেট_ডাইরেক্টরিজ" সন্ধান করতে পারে। এটি ডিফল্টরূপে মন্তব্য করা হয়েছে তবে এটির ডিফল্ট সেট রয়েছে, যেমন:
স্টিফেন ফ্রস্ট

# ইউনিক্স_সকেট_ডাইরেক্টরিজ = '/ টিএমপি' # কমা দ্বারা বিভক্ত ডিরেক্টরিগুলির তালিকা
স্টিফেন ফ্রস্ট

2

হোমব্রু ব্যবহার করে ম্যাক 10.15.5 এ চালানোর সময় আমি এই ত্রুটির মুখোমুখি হয়েছি।

পোস্টমাস্টার.পিড নামে একটি ফাইল রয়েছে যা পোস্টরেসকিএল থেকে বেরিয়ে গেলে স্বয়ংক্রিয়ভাবে মুছে ফেলা উচিত।

যদি এটি নিম্নলিখিত না করে

  • ব্রিউ সার্ভিসগুলি পোস্টগ্রেস্কল << বন্ধ করে দেয় rm এর আগে প্রস্থান করতে ব্যর্থ হয়ে ডিবি দুর্নীতিগ্রস্থ হতে পারে
  • sudo rm /usr/local/var/postgres/postmaster.pid

1

কারণ

সিংহ ইতিমধ্যে ইনস্টল করা পোস্টগ্রাসের একটি সংস্করণ সহ আসে এবং ডিফল্টরূপে সেই বাইনারিগুলি ব্যবহার করে। সাধারণভাবে আপনি হোমব্রিউ পোস্টগ্রিস বাইনারিগুলির পুরো পথটি ব্যবহার করে এটি পেতে পারেন তবে অন্যান্য প্রোগ্রামগুলির সাথে এখনও সমস্যা থাকতে পারে।

সমাধান

কার্ল http://nextmarvel.net/blog/downloads/fixBrewLionPostgres.sh | SH

এর মাধ্যমে

http://nextmarvel.net/blog/2011/09/brew-install-postgresql-on-os-x-lion/


1

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

$psql -h localhost 

সার্ভার পুনরায় চালু করতে।


1

হ্যালো ওয়ার্ল্ড :)
আমার জন্য সর্বোত্তম তবে অদ্ভুত উপায়টি ছিল পরবর্তী জিনিসগুলি করা।

1) postgres93.app বা অন্যান্য সংস্করণ ডাউনলোড করুন । এই অ্যাপ্লিকেশনটিকে / অ্যাপ্লিকেশন / ফোল্ডারে যুক্ত করুন।

2) ফাইলটিতে একটি সারি (কমান্ড) যুক্ত করুন .bash_profile(যা আমার হোম ডিরেক্টরিতে রয়েছে):

PATH = / অ্যাপ্লিকেশন / Postgres93.app / সামগ্রী / MacOS / বিন /: AT পাঠান রফতানি করুন
এটি psqlথেকে একটি পাঠ্য Postgres93.app। প্রতিটি সময় কনসোল শুরু হওয়ার পরে সারি (কমান্ড) চলমান।

3) ফোল্ডার Postgres93.appথেকে লঞ্চ /Applications/। এটি একটি স্থানীয় সার্ভার শুরু করে (পোর্টটি "5432" এবং হোস্টটি "লোকালহোস্ট")।

4) এই হেরফেরগুলির পরেও আমি চালানো $ createuser -SRDP user_nameএবং অন্যান্য আদেশগুলি খুশি হয়েছিলাম এবং এটি দেখতে পেরেছি! Postgres93.appআপনার সিস্টেম প্রতিবার শুরু হওয়ার সাথে সাথে চালানোর জন্য তৈরি করা যেতে পারে।

৫) এছাড়াও যদি আপনি গ্রাহকভাবে আপনার ডাটাবেসগুলি দেখতে চান তবে আপনার ইনস্টল করা উচিত PG Commander.app। আপনার পোস্টগ্রিজ ডিবিটিকে সুন্দর ডেটা-টেবিল হিসাবে দেখার ভাল উপায়

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


1

আমার পোস্টগ্রিএসকিউএল 9.3 ছিল এবং একই ত্রুটি পেয়েছি,

সার্ভারের সাথে সংযোগ স্থাপন করা যায়নি: সংযোগ অস্বীকৃত সার্ভারটি কি "লোকালহোস্ট" (127.0.0.1) হোস্টে চলছে এবং 5432 পোর্টে টিসিপি / আইপি সংযোগ গ্রহণ করছে?

আমি এটি ব্যবহার করে এটি ঠিক করেছি:

chmod 777  /var/lib/pgsql/9.3/data/pg_hba.conf 
service postgresql-9.3 restart

এটা আমার জন্য কাজ করে.


এই ফাইলটি আমার জন্য বিদ্যমান নেই
allthesignals

1

এটি মূল্যবান কিসের জন্য, আমি যখন আমার ফাইলে টাইপ ( md4পরিবর্তে md5) করেছি তখন আমি এই একই ত্রুটিটি অনুভব করেছি pg_hba.conf(/etc/postgresql/9.5/main/pg_hba.conf )

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


কোথায় pg_hba.confফাইল?
বুবকাজোবা

1
/etc/postgresql/{postgres_version}/main/pg_hba.conf
মেলেন

0

স্থানীয়ভাবে পোস্টগ্রেএসকিউএল চালানোর ক্ষেত্রে বিভিন্ন সমস্যা থাকতে পারে। আমি ইনস্টল হওয়া পোস্টগ্রাসের সমস্ত সংস্করণ পরিষ্কার করার এবং নতুন করে শুরু করার পরামর্শ দেব। একবার আপনি এটি ইনস্টল হয়ে গেলে আপনার রেল প্রকল্পটি আপ টু ডেট থাকলে আপনার ডাটাবেসটি পুনরায় তৈরি করা খুব সহজdb/schema.rb

এখানে আমি সাধারণত ম্যাকে পোস্টগ্রিজ এসকিউএল ইনস্টল করি । আপনি যদি স্থানীয়ভাবে রুট ব্যবহারকারীর অধীনে আপনার ডাটাবেসটি চালাচ্ছেন তবে আপনি todoব্যবহারকারী তৈরি করা শেষ পদক্ষেপটি বাদ দিতে পারেন


0

এর অন্যতম কারণ হতে পারে

postgresql.conf ফাইলের unix_sket_directories এটি যে ডিরেক্টরিটির সন্ধান করছে তার সাথে তালিকাভুক্ত নয়।

প্রশ্নের উদাহরণে এটি ডিরেক্টরি / টিএমপি অনুসন্ধান করছে এটি পোস্টগ্র্রেসকিএলসিএনএফ ফাইলটিতে সরবরাহ করতে হবে

এটার মতো কিছু:

unix_socket_directories = '/var/run/postgresql,/tmp'    # comma-separated list of directories

এই সমাধানটি আমার পক্ষে কাজ করেছিল।


0

আপনি যদি ম্যাকওএসে থাকেন এবং হোমব্রিউ ব্যবহার করছেন তবে আমি এই উত্তরটি অত্যন্ত সহায়ক বলে মনে করেছি:

https://stackoverflow.com/a/27708774/4062901

আমার জন্য, আমার সার্ভারটি চলছিল তবে একটি আপগ্রেডের কারণে আমার সংযোগ করার সমস্যা হচ্ছে (দ্রষ্টব্য: আমি ব্রু পরিষেবাগুলি ব্যবহার করি)। যদি পোস্টগ্রিস চলমান থাকে তবে চেষ্টা করুন cat /usr/local/var/postgres/server.logএবং লগগুলি কী বলে তা দেখুন। আমার ত্রুটিটি কোনও স্থানান্তর ছিল, সংযোগের সমস্যা নয়।

এছাড়াও তারা প্রস্তাবিত ম্যানুয়াল স্থানান্তরের পরে (যা কাজ করে তবে) আমি দেখতে পেয়েছি যে আমার ব্যবহারকারীর জন্য আর কোনও টেবিল নেই। এটি ঠিক করার জন্য এই কমান্ডটি ব্যবহার করে দেখুন: createdb( পিএসকিএল-এর মাধ্যমে জবাব দেওয়া হয়েছে: ফ্যাটাল: ডাটাবেস "<ব্যবহারকারীর" উপস্থিত নেই )


0

দৌড়ে ত্রুটি উপস্থিত হওয়ার সাথে সাথে কেবল পোস্টগ্রিজ পুনরায় চালু করুন brew services restart postgresqlএবং তারপরে আবার চেষ্টা করুন


0

আমার জন্য আদেশ rm /usr/local/var/postgres/postmaster.pid হয়নি কারণ আমি হোমগ্রাবের সাথে পোস্টগ্র্যাসকিএল-এর একটি নির্দিষ্ট সংস্করণ ইনস্টল করেছি।

সঠিক কমান্ড হয় rm /usr/local/var/postgres@10/postmaster.pid

তারপর brew services restart postgresql@10


-5

এটা খুবই সাধারণ. আপনার ডাটাবেস.আইএমএল ফাইলটিতে কেবল হোস্ট যুক্ত করুন।


হোস্ট: 127.0.0.1 বা হোস্ট: উদাহরণস্বরূপ লোকালহোস্ট।
রিকার্ডো - নেক্সটভ

প্রত্যেকেই একটি সহজ সমাধান পছন্দ করে। কিন্তু কিভাবে এই কাজ করে? আমি উপরের আমার মন্তব্যে যেমন বলেছি, এটি অনুসন্ধান আমাকে অনেক জটিল পথে নামিয়েছে। আপনি কি কিছুটা বিশদভাবে বর্ণনা করতে পারেন এবং সমস্যাটি কীভাবে দেখছেন এবং এই সাধারণ পরিবর্তনটি কীভাবে সমস্যাটিকে সম্বোধন করে সে সম্পর্কে আমাদের আরও কিছুটা ব্যাকগ্রাউন্ড দিতে পারেন। এই এক অবদান জন্য ধন্যবাদ! :)
অভিব্যক্ত

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