[RUBY-ON-RAILS] PG : ConnectionBad : fe_sendauth는 : 암호가 제공되지
RUBY-ON-RAILSPG : ConnectionBad : fe_sendauth는 : 암호가 제공되지
내가 로컬 포스트 그레스 데이터베이스에서 "레이크 테스트"를 실행하려고 할 때, 위의 예외가 발생합니다.
여기 내있는 pg_hba.conf 파일은 다음과 같습니다 유닉스 도메인 소켓으로 # 데이터베이스 관리 로그인 지역 모든 포스트 그레스는 피어
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all username peer
local myapp_dev myapp md5
local myapp_test myapp md5
local myapp_prod myapp md5
#local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication postgres peer
#host replication postgres 127.0.0.1/32 md5
#host replication postgres ::1/128 md5
여기 내 database.yml을에서 관련 섹션
test:
adapter: postgresql
database: myapp_test
pool: 5
timeout: 5000
host: localhost
username: username
password:
실제 database.yml을에서 '사용자 이름'나는로 로그인하고 나의 실제 사용자 이름으로 대체됩니다. 인증 방법은 "피어"로 정의되기 때문에, 암호가 필요하지 않을 것이다.
또한 포스트 그레스를 다시 시작 신세를지고있다
sudo -u postgres pg_ctlcluster 9.3 main restart
또 내가 여기에 놓친 거지?
해결법
-
==============================
1.호스트가 인증 방법을 의미 TCP 연결을 의미로 localhost는있는 pg_hba.conf 당 MD5 (암호 필요)입니다 :
호스트가 인증 방법을 의미 TCP 연결을 의미로 localhost는있는 pg_hba.conf 당 MD5 (암호 필요)입니다 :
# IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5
피어 방법이 수행되기 위해서는 당신이 사용하고있는 것으로 보인다 있기 때문에, 당신은 유닉스 도메인 소켓을 통해 연결해야하고, 줄 데비안 같은 OS, 수단이 전혀은 / var / 실행 / 호스트 필드에 PostgreSQL을, 또는 아무것도를 두는 것을 (환경 변수가 다른 말을하지 않는 한이 기본입니다).
편집 : 발표로 데이터베이스 URI를 사용하는 경우 (레일 - 4.1부터 지원 http://weblog.rubyonrails.org/2014/4/8/Rails-4-1/), 구문이 될 수있다 :
-
==============================
2.다음과 같이 코드를 변경하고 그것을 작동합니다
다음과 같이 코드를 변경하고 그것을 작동합니다
pg_hba.conf: # IPv4 local connections: host all all 127.0.0.1/32 trust # IPv6 local connections: host all all ::1/128 trust
그 아래 설명 :
자세한 내용은 여기에 대한 참조
-
==============================
3.당신의 hb_conf 이미 힘 암호에 수정 된 경우, 반드시 당신의 레일 응용 프로그램의 데이터베이스 구성 모두 개발 및 테스트 환경에 암호를 포함합니다.
당신의 hb_conf 이미 힘 암호에 수정 된 경우, 반드시 당신의 레일 응용 프로그램의 데이터베이스 구성 모두 개발 및 테스트 환경에 암호를 포함합니다.
default: &default adapter: postgresql encoding: unicode pool: 5 host: localhost username: your_user password: your_password development: <<: *default database: your_db_development test: <<: *default database: your_db_test production: url: <%= ENV['DATABASE_URL'] %>
내가 테스트 데이터베이스에 대한 암호를 제공하는 데 실패 할 때이 오류를 얻고 있었다.
-
==============================
4.나는 포스트 그레스 응용 프로그램을 사용합니다. 어떤 정말 좋은 당신은 database.yml을의 기본 부분에 사용자 이름과 암호를 입력 할 필요가 없기 때문에
나는 포스트 그레스 응용 프로그램을 사용합니다. 어떤 정말 좋은 당신은 database.yml을의 기본 부분에 사용자 이름과 암호를 입력 할 필요가 없기 때문에
database.yml을
default: &default adapter: postgresql encoding: unicode pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> development: <<: *default database: my-app_development test: <<: *default database: my-app_test production: <<: *default database: my-app_production username: my-app password: <%= ENV['MY-APP_DATABASE_PASSWORD'] %>
내 문제 : 나는 경로를 변경하고 작업에 포스트 그레스를 얻을 수 없습니다.
해결 방법 : 문서로를 사용 :
1) 제거 응용 프로그램
2) 포스트 그레스는 sudo는 pkill에 -u 포스트 그레스 사용 말한다이 답변을 사용하여 처리 중지
3) 다시 설치하고 응용 프로그램을 시작
모든 것은 지금 잘 작동 좋은 하루 되세요한다!
참고 : 이렇게하면 또한 사용에 문제 Postgres.app 포트 5432를 해결
-
==============================
5.나도이 질문을 만났다. 내 데이터베이스 설정, /var/www/myproject/shared/config/database.yml을 확인 :
나도이 질문을 만났다. 내 데이터베이스 설정, /var/www/myproject/shared/config/database.yml을 확인 :
production: adapter: postgresql pool: 5 timeout: 5000 encoding: utf8 host: localhost database: myproject username: myname password: <%= ENV['name_DATABASE_PASSWORD'] %>
내가 마지막 단락이 잘못을 발견, 올바른 코드는
password: <%= ENV['myproject_DATABASE_PASSWORD'] %>
from https://stackoverflow.com/questions/23375740/pgconnectionbad-fe-sendauth-no-password-supplied by cc-by-sa and MIT license
'RUBY-ON-RAILS' 카테고리의 다른 글
[RUBY-ON-RAILS] Heroku가 - 현재의 디스플레이 해시 커밋 (0) | 2020.03.01 |
---|---|
[RUBY-ON-RAILS] 레일 내측 텍스트 또는 HTML과 LINK_TO의 IMAGE_TAG (0) | 2020.03.01 |
[RUBY-ON-RAILS] 레일 3 루비 : "클래스의 슈퍼 클래스 불일치 ..." (0) | 2020.03.01 |
[RUBY-ON-RAILS] 레일을 사용하여 이메일에 삽입 이미지에 대한 권리 방법은 무엇입니까? (0) | 2020.03.01 |
[RUBY-ON-RAILS] 설정 / 환경 / development.rb에서 "consider_all_requests_local"의 목적? (0) | 2020.03.01 |