2011-02-22 15 views
7

pgAdmin kullanarak Rails uygulamasının veritabanına bağlanma konusunda sorun yaşıyorum. Sunucum çalışıyor ve sunucu özelliklerimin pgAdmin'de doğru olduğuna inanıyorum. Ne sahip Burada pgAdmin sunucu özelliklerinde var:Rails uygulamasına bağlanma Postgres DB, pgAdmin kullanarak

development: 
    adapter: postgresql 
    host: localhost 
    username: achievenext 
    password: ****** 
    database: achievenext_dev 

Ama bağlanmaya çalıştığınızda pgAdmin bu hatayı döndürür::

Name: achievenext_dev 
Host: localhost 
port: 3000 
SSL: 
Maintenance DB: postgres 
username: achievenext 
password: ****** 
Store password: true 
Restore env?: true 
DB Restriction: 
Service: 
Connect now: true 

Ve database.yml dosyasında

An error has occurred:

Error connecting to the server: server closed the connection unexpectedly. This probably means the server terminated abnormally before or while processing the request.

Ama sunucumda hiç hata yok. İyi çalışıyor gibi görünüyor. Burada ne yaptığımı anlayamıyorum.

cevap

3

development.yml dosyanıza bir bağlantı noktası eklemeyi deneyin. Özellikle bir windows işletim sistemi çalıştırırsanız.

Varsayılan bağlantı noktası port:5432'dur ve pgAdminIII ürününüzde port:3000 belirtilmesi sorunlara neden olabileceğinden emin değilim.

1

localhost yerine 127.0.0.1 kullanmayı deneyebilir misiniz? Biliyorum mysql sık sık bir TCP bağlantısı yapmak yerine soket dosyasına bağlanmaya çalışacak sorunlara neden olur.

+1

Yorum için teşekkürler Danny, localhost yerine 127.0.0.1 kullanmayı denedim ve bu da işe yaramadı. –

+0

ev sahibi: localhost yerine 127.0.0.1 benim macumda benim için çalıştı. Bu bahşiş için çok teşekkürler! –