2013-04-07 4 views
3

postgres라는 로컬 컴퓨터 계정을 사용하여 Windows 서비스와 함께 pgAgent를 설치했습니다. Windows 서비스가 정상적으로 실행되고 있음을 확인했습니다. 내 고객 DB의 테이블에서 특정 레코드를 삭제해야하는 pgAdmin에서 작업을 만들었습니다. 작업의 유일한 단계는 고객 DB에 대한 로컬 연결 유형으로 구성됩니다.pgAgent 작업이 인증 오류로 실패합니다.

Failed to create new connection to database 'customer':'fe_sendauth: no password supplied'

내가 C에 위치한 pgpass.conf 파일이 있음을 확인했습니다 : 문제는 작업이 Windows 이벤트 로그에 기록 된 다음과 같은 경고 매번 실패한다 \ 사용자 포스트 그레스가의 AppData를 \ \ \ Roaming \ postgresql. 여기 그 내용은 다음과 같습니다

localhost:5432:postgres:postgres:<password_redacted>

내가 시도 할 다른 무엇 확실하지 않다. pgAgent에 적용 할 때이 오류 메시지에 대한 추가 정보를 찾을 수 없습니다.

버전 정보 :

  • 의 PostgreSQL 9.2.4 구축, Visual C++에 의해 컴파일 된 1600, 64 비트
  • pgAdmin 1.16.1
  • pgAgent v3.3.0-1

Windows 서비스 시작 정보 :

C:\Program Files (x86)\pgAgent\bin\pgagent.exe RUN pgAgent host=localhost port=5432 user=postgres dbname=postgres

위해서는 pg_hba.conf의

비 코멘트 내용 : 내가 한 일은 내가 버튼으로 연결 문자열을 설정 원격 에 연결 유형을 변경 PgAgentIII

에서 작업의 단계에 따라

host all    all    127.0.0.1/32   md5 
host all    all    ::1/128     md5 
+0

귀하의 Postgres 및 pgAdmin 버전을 언급하는 것을 잊었습니다. DB 로그의 내용은 무엇입니까? 'pg_hba.conf'에 무엇이 들어 있습니까? [이 관련 답변] (특히 Windows에 관한 부분) (http://stackoverflow.com/questions/15359348/run-batch-file-with-psql-command-without-password/15593100#15593100)을 읽는 것이 도움이됩니까? –

+0

요청시 추가됨. 또한 다른 기사에서는 psql.exe를 다루므로 문제가 동일하지 않습니다. 이것이 Windows 서비스라는 사실은 IMO를 디버그하는 것을 어렵게 만듭니다. – NathanAldenSr

+0

이것이 로컬 호스트와 로컬 호스트가 관련이 있는지 궁금합니다. 그렇더라도, 나는 무엇이 바뀌어야하는지 정확히 알지 못합니다. – NathanAldenSr

답변

2

했다 ... enter code here 내 애플 리케이션에 = 사용자 이름 enter code here 추가 암호 = PASSWORD (비밀번호를 입력) enter code here 변화 호스트를 포스트 그레스을 사용자가 변경 = 127.0.0.1

오랫동안 오류가 발생했습니다.

도움이되기를 바랍니다. PostgreSQL의와에

+2

이것이 작동해도 로컬 연결을 작동시키는 방법을 찾는 데 여전히 관심이 있습니다. – NathanAldenSr

0

나는 로컬 연결을 위해 구성된 pgAgent 작업 단계와 같은 문제로 충돌했습니다 연결 문자열에 암호를 넣어와
Failed to create new connection to database '<database_name>':'fe_sendauth: no password supplied'

솔루션은 잘 작동하지만 안전하지 않은 것 같다.

내가 다른 해결책을 발견했습니다 주위에 파고 후 - 문제 해결 단계의 대상 데이터베이스 pgpass.conf에 추가 연결 문자열 :
localhost:5432:<database_name>:postgres:<password>

-1

것이 확인 확인을 그 이름 pgadmin 서비스와 검사하고있는 pgpass.conf 파일의 username이 일치해야합니다.pgadmin 설치 프로그램이 로컬 사용자로 실행되도록 서비스를 설정했음을 깨닫고 도메인 사용자와 동일한 사용자 이름으로 pgpass.conf를 검사 할 때까지 동일한 문제가있었습니다.

관련 문제