program tip

Postgresql 어댑터 (pg) : 서버에 연결할 수 없습니다.

radiobox 2020. 11. 19. 08:02
반응형

Postgresql 어댑터 (pg) : 서버에 연결할 수 없습니다.


Rails 앱을 실행할 때 마다이 오류가 발생합니다 ( 로컬 Postgresql에 연결할 수 없습니다 )

/Users/leonardo/.rvm/gems/ruby-1.9.3-p362/gems/activerecord-3.2.11/lib/
active_record/connection_adapters/postgresql_adapter.rb:1208:in `initialize': 
could not connect to server: No such file or directory (PG::Error)
   Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?

올바르게 실행중인 Postgres.app사용 하고 있습니다.

내가 달리면

$ psql

Postgresql 콘솔에 제대로 로그인 할 수 있습니다.

$ which psql
 /Applications/Postgres.app/Contents/MacOS/bin/psql

Gemfile

source 'https://rubygems.org'
ruby "1.9.3"

gem 'rails', '3.2.11'
gem "pg"

database.yml

development:
  adapter: postgresql
  encoding: unicode
  username: leonardo
  password: 
  database: zapping
  port: 5432  

Postgresql (콘솔)

$ psql
leonardo=# \l

여기에 이미지 설명 입력


host: localhostdatabase.yml에 추가해보십시오 . (기준 : https://stackoverflow.com/a/10793186/919641 )


당신의 Pg보석은 PostgreSQL을에 대해 컴파일 된 맥 OS X에 미리 설치된 libpq를 당신은 사용하고 psql새 버전에 설치 한, 또는 그 반대의 경우도 마찬가지입니다.

에 추가 localhost하여 TCP / IP 연결을 지정하여 해결할 수 database.yml있지만 실제로 실행중인 서버 Pg에 대해 gem 을 컴파일하는 것이 좋습니다 libpq. 그렇게하려면 컴파일하기 전에 PATH환경 변수를 올바른 폴더 에 설정할 수 있어야합니다 pg_config. 귀하의 경우에는 어딘가에 있습니다 Postgres.app.


그것도 추가 한 후 작동하지 않는 경우 host: localhost의 제거postmaster.pid

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


host: localhostdb 구성에 추가 해야합니다 ...


Mac에서도 같은 문제가 발생했습니다. 내 경로에 있던 psql이 제대로 작동하지 않는 것으로 나타났습니다. 다음을 입력하여 psql을 시작해보십시오.

~/projects/some_project/project-rails$ 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/pgsql_socket/.s.PGSQL.5432"?

이것이 보이면 경로의 psql 바이너리가 소켓을 사용하여 연결을 시도하고 있으며 연결할 수 없음을 나타냅니다 (어떤 이유로 든). 이미 pgadmin을 다운로드 했고 제대로 연결 되었기 때문에 서버에 문제가 없다는 것을 알았습니다.

내 PATH에 올바른 버전의 pgsql을 추가하여 수정했습니다 .

export PATH=/Applications/Postgres.app/Contents/MacOS/bin:$PATH

이제 psql (및 레일)이 행복합니다!


나는 이와 같은 문제가 있었다. 실제로 postgres를 실행 / 시작해야합니다. Postgres는 최근에 내 컴퓨터에서 실행을 중지 했어야하므로 postgres 서버를 시작하여 실행 중인지 확인해야했습니다.

postgres -D /usr/local/var/postgres

그런 다음 다음 명령 (당신이 가진 것과 동일한 오류를 일으켰던)이 모두 작동했습니다.

bundle exec rake db:create db:migrate
bundle exec rspec

나는이 문제가 있었다. 여기에있는 의견 중 하나가 문제를 해결하는 데 도움이되었습니다.

Thanks, this answer helped me fix it. The steps I took were simple: 1) gem uninstall pg, 2) bundle install, done. – haslo Dec 3 '13 at 20:27

gem uninstall pg
bundle install

Since This was the first post that appeared in my search result, I have decided to post the updated fix for this. Since none of the above suggestion worked for me.

brew postgresql-upgrade-database

It upgraded postgresql data and moved my old version. I was on 9.6 instead of 10.4

Found the solution here


find / -name 'postgresql.conf'

netstat -an | grep 5432 # => /tmp/.s.PGSQL.5432

vi /Users/admin/Library/Application\ Support/Postgres93/var/postgresql.conf

FROM: unix_socket_directories = '/tmp'

TO: unix_socket_directories = '/var/pgsql_socket'

sudo mkdir /var/pgsql_socket

sudo chmod 777 /var/pgsql_socket


For heroku this is all you need.

heroku addons:create heroku-postgresql

production:
 adapter: postgresql
 encoding: unicode
 host: localhost
 # For details on connection pooling, see rails configuration guide
 # http://guides.rubyonrails.org/configuring.html#database-pooling
 pool: 5

I just had the problem that the postgres app wasn't running on my mac...


On Mac, I had different versions of postgresql. This problem has been solved when I tried brew switch postgresql 9.5.5 (I don't think version number matters at this point)

$ brew switch postgresql 9.5.5
Cleaning /usr/local/Cellar/postgresql/9.6.1
Cleaning /usr/local/Cellar/postgresql/9.6.5
Cleaning /usr/local/Cellar/postgresql/10.2
Cleaning /usr/local/Cellar/postgresql/10.3
Cleaning /usr/local/Cellar/postgresql/9.5.5
Cleaning /usr/local/Cellar/postgresql/9.5.4

All data will be gone away, by the way. I guess there's a brew command for doing this without switching version, which I couldn't find.


I had the same problem on OS High sierra 10.13 I followed the instructions from this website I downloaded version 10.4 ref: https://postgresapp.com/

Then I added this to bash profile: export PATH=$PATH:/Library/PostgreSQL/10.4/bin:$PATH

re start terminal.

Open new window terminal and then type: psql -U postgres

after that you will see this message: psql (10.4) Type "help" for help.

postgres=#


내 문제는 /etc/hosts파일이 변경되었고 다음과 같은 중요한 항목이 없다는 것입니다.127.0.0.1 localhost

참고 URL : https://stackoverflow.com/questions/14225038/postgresql-adapter-pg-could-not-connect-to-server

반응형