SORU
11 Aralık 2011, Pazar


Yerel PostgreSQL için bağlanamıyor

Bork için yerel bir geliştirme ortamı başardım.

Tüm yerel Raylar uygulamalarım şimdi hata veriyor:

PGError
could not connect to server: Permission denied
    Is the server running locally and accepting
    connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?

Bunun sebebinin ne olduğuna dair hiçbir fikrim yok.

Birlikte taşlar, güncelleştirilmiş sistem taşlar, güncelleştirilmiş MacPorts tüm güncelledik bir çözüm ararken. Hiçbir sevinç.

Diğerleri Aslan, kullanılması gereken bir karışıklık nedeniyle (örneğin, sürüm Sürüm) veya MacPorts)) Leopar yükseltirken bu sorun bildirdin. Birkaç ay Aslan koşuyorum, bu böyle olması garip geliyor.

Sorunun ne olduğunu ilk anlamadan çok fazla uğraşmak istemiyorum. Bu nasıl sistemli bir şekilde hata ayıklama yapabilir miyim?

Kaç PostgreSQL sürümleri bir erişiliyor benim sistem, ve bulunduğu belirleyebilirim? Nasıl yanlış PostgreSQL kullanılıyorsa, bu düzeltebilirim?

Üzgünüm çaylak soru için. Bu işlerin nasıl yürüdüğünü hala öğreniyorum! Herhangi bir işaretçiler için teşekkür ederiz.

EDİT

Bazı güncellemeler öneri ve yorumlar aşağıda dayanarak.

command not found Bir hata döndürdü pg_lsclusters koşmaya çalıştım.

O zaman benim pg_hba yerel etmeye çalıştı.conf ve bu üç örnek dosya buldu

/opt/local/share/postgresql84/pg_hba.conf.sample
/opt/local/var/macports/software/postgresql84/8.4.7_0/opt/local/share/postgresql84/pg_hba.conf.sample
/usr/share/postgresql/pg_hba.conf.sample

NUMARASINI 3 sürümü yüklü olduğunu varsayıyorum, değil mi? Macports, varsayılan) ve ???.

Sonra döndü hangi launchctl başlangıç komut dosyası için bir arama ps -ef | grep postgres yaptı

0    56     1   0 11:41AM ??         0:00.02 /opt/local/bin/daemondo --label=postgresql84-server --start-cmd /opt/local/etc/LaunchDaemons/org.macports.postgresql84-server/postgresql84-server.wrapper start ; --stop-cmd /opt/local/etc/LaunchDaemons/org.macports.postgresql84-server/postgresql84-server.wrapper stop ; --restart-cmd /opt/local/etc/LaunchDaemons/org.macports.postgresql84-server/postgresql84-server.wrapper restart ; --pid=none
  500   372     1   0 11:42AM ??         0:00.17 /opt/local/lib/postgresql84/bin/postgres -D /opt/local/var/db/postgresql84/defaultdb
  500   766   372   0 11:43AM ??         0:00.37 postgres: writer process                                                                                                                                                                                                                                                                                                                   
  500   767   372   0 11:43AM ??         0:00.24 postgres: wal writer process                                                                                                                                                                                                                                                                                                               
  500   768   372   0 11:43AM ??         0:00.16 postgres: autovacuum launcher process                                                                                                                                                                                                                                                                                                      
  500   769   372   0 11:43AM ??         0:00.08 postgres: stats collector process                                                                                                                                                                                                                                                                                                          
  501  4497  1016   0 12:36PM ttys000    0:00.00 grep postgres

Postgresql84-sunucu içeriğini gönderdiniz.http://pastebin.com/Gj5TpP62 sarıcı.

port load postgresql184-server kaçmaya çalıştım ama 16* *bir hata aldı.

Bu düzeltme, ve "aptallar" işaretçiler. için herhangi kıymetini hala kafam çok karışık

Teşekkürler!

EDİT2

Bu sorunu daemondo bazı problemler vardı sonra başladı. Yerel Raylar uygulamalarım çizgisinde bir uygulama hatası ile çökmesini "daemondo gem bulunamaz". Ben o zaman paket güncellemeleri, gem güncellemeleri, port güncellemeleri ve demlemek güncellemeleri bir dizi deneyin ve sorunu bulmaya gitti.

Bu hata daemondo ile ilgili bir sorun olabilir mi?

CEVAP
12 Aralık 2011, PAZARTESİ


Bu gerçekten dosya izinleri ile ilgili bir hata gibi görünüyor. Unix alan soketleri dosyaları ve diğer davalar gibi kullanıcı izinleri var. ) Kullanıcı veritabanına erişmek için çalışırken yuva dosyaya erişmek için dosya izinleri yok gibi görünüyor. Aynı hata (aşağıda dahil) oluşturmak için denemek için Ubuntu ve numarasını üzerinde bazı testler yaptım da bunu doğruluyor.

Soket dosya izinleri ve dizinleri /var /var/pgsql_socket kontrol etmeniz gerekir. Raylar app (kullanıcı)) (x) bu dizinler yürütme izinleri olmalıdır (tercihen herkesin izinleri) ve yuva izinleri (wrx) olmalıdır. ls -lAd <file> Bu kontrol etmek için kullanabilirsiniz, ve onları herhangi bir dosyayı kontrol etmeniz gerekir bir sembolik link veya link dır eğer işaret eder.

Yüzünüzden üzerinde dizin izinleri değiştirebilirsiniz, ama yuva postgresql.conf PostgreSQL tarafından yapılandırılır. Bu pg_hba.conf aynı dizine (hangisi olduğunu anlamaya olacak) bulunabilir. İzinleri ayarladıktan sonra postgresql yeniden başlatmanız gerekecek.

# postgresql.conf should contain...
unix_socket_directory = '/var/run/postgresql'       # dont worry if yours is different
#unix_socket_group = ''                             # default is fine here
#unix_socket_permissions = 0777                     # check this one and uncomment if necessary.

DÜZENLEME:

Eğer relavent olup olmadığını görmek için içine bakmak isteyebilirsiniz ki Google'da hızlı bir arama yaptım. Bu iyi find config dosyası için herhangi bir girişim başarısız neden olabilir.

http://www.postgresqlformac.com/server/howto_edit_postgresql_confi.html


Hata mesajları:

Kullanıcı pg_hba bulunamadı.conf

psql: FATAL:  no pg_hba.conf entry for host "[local]", user "couling", database "main", SSL off

Kullanıcı parola kimlik doğrulama başarısız oldu:

psql: FATAL:  password authentication failed for user "couling"

Unix soket dosyası kayıp

psql: could not connect to server: No such file or directory
    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

Unıx soket var, ama sunucu dinlemiyor.

psql: could not connect to server: Connection refused
    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

Hatalı dosya unıx soket dosya izinleri:

psql: could not connect to server: Permission denied
    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • GenTechPC

    GenTechPC

    1 Temmuz 2007
  • Ownage Pranks

    Ownage Prank

    13 AĞUSTOS 2007
  • SaMmM123

    SaMmM123

    3 Mayıs 2006