2015-01-21 3 views
1

Npgsql 공급자와 Entity Framework를 사용하는 C# Windows Forms 응용 프로그램에서 Heroku Postgres 데이터베이스 (Hobby-dev 수준)에 연결하려고합니다 (최신 버전) 그리고 다음 내부 예외가있는 ProviderIncompatibleException이 발생합니다..NET 응용 프로그램 (Npgsql)에서 Heroku Postgres에 연결할 수 없습니다.

"공급자가 ProviderManifestToken 문자열을 반환하지 않았습니다." "치명적 : 42501 : 데이터베이스"postgres "에 대한 사용 권한이 거부되었습니다."세부 정보 : "사용자가 에 CONNECT 권한이 없습니다."

데이터베이스는 Heroku에서 실행되는 Ruby on Rails 앱을 통해 액세스 할 수 있으며 Windows의 pgAdmin III를 통해 액세스 할 수 있습니다. 연결이 로컬 및 원격 PostgreSQL 개발 데이터베이스 모두에서 완벽하게 작동하기 때문에 Npgsql에서 문제가되지 않는다고 생각합니다.

Server=HerokuAmazonAWS;Port=5432;Database=MyHerokuDatabase;User Id=MyHerokuUsername;Password=MyHerokuPassword;SSL=true;SslMode=Require; 

에게 Heroku는 DB에 대한 SSL 연결을 필요로하기 때문에, 나는 연결 문자열을 설정 한, 그래서이 :

내가 app.config 파일에 사용하고 연결 문자열은 다음과 같습니다 문제가되지 않습니다. 이 "서버 postgres에 대한 사용 권한이 거부되었습니다."오류는 해당 서버의 postgres db에 연결하지 않기 때문에 문제가됩니다. 이 문제를 일으킬 수있는 아이디어와 해결 방법을 알고 있습니까? 감사.

우리는 그 문제를 해결할 수있는 버그 수정 릴리스 발표했다

답변

1

: https://github.com/npgsql/npgsql/releases/tag/v2.2.5

"포스트 그레스"데이터베이스에 연결하는 것이 가능하다는 것을 가정했지만, 아마존 Redshift에와 Heroku가 모두 보인다는 일반 액세스를 취소 한 것으로 그것에. 이제 "template1"이 대신 사용됩니다.

+2

흠, 분명히 template1도 사용할 수 없습니다. 방금 다른 기회를 보았으므로 다음 버전에서이 문제를 해결할 것입니다. – Emil

+1

이 문제도 발생합니다. 데이터베이스 "template1"에 대한 사용 권한이 거부되었습니다. heroku에서 실행. –

관련 문제