2013-09-02 39 views
22

PostgreSQL 9.2 var Windows 7'de yüklü ve sanal makinede Windows XP yüklü var, bu iki veritabanını nasıl bağlarım ve veritabanına her iki sistemden veri ekleme/düzenleme izni verilsin mi?PostgreSQL veritabanına Uzaktan Erişim Nasıl İzin Verilir

+0

Teşekkürler ama Microsoft Virtual PC kullanıyorum, hangi IP adresini ekleyeceğimi nasıl bilebilirim? – Ali4356

cevap

48

uzaktan PostgreSQL veritabanına erişim için, ayarlamalısınız iki ana PostgreSQL yapılandırma dosyaları:

postgresql.conf
pg_hba.conf İşte

bunları nasıl ayarlayacağınız ile ilgili kısa bir açıklama olduğunu (aşağıdaki açıklamanın tamamen doğru olduğunu unutmayın: Bir makineyi güvenli bir şekilde yapılandırmak için, tüm parametrelere ve anlamlarına aşina olmalısınız)

Her şeyden önce, Windows 7'deki tüm ağ arabirimlerinde 5432 bağlantı noktasını dinlemek üzere PostgreSQL hizmetini yapılandırın makina e:
dosyayı postgresql.conf (genellikle C bulunur: \ Program Files \ PostgreSQL \ 9.2 \ verileri) açıp parametreyi

listen_addresses = '*' 

WindowsXP sanal makinenin ağ adresini kontrol ayarlar ve pg_hba parametreleri ayarlar .conf dosyası (postgresql.conf'un aynı dizininde bulunur) böylece postgresql sanal makine ana bilgisayarlarından bağlantı kabul edebilir. Windows XP ile makine 192.168.56.2 IP adresi varsa
Örneğin, pg_hba.conf dosyasında ekleyin:

host all all 192.168.56.1/24 md5 

bu şekilde, PostgreSQL ağında 192.168.1.XXX üzerindeki tüm ana bilgisayarlardan bağlantıları kabul eder.

Windows 7'de PostgreSQL hizmetini yeniden başlatın (Hizmetler -> PosgreSQL 9.2: sağ tıklayıp yeniden başlatmayı başlatın). Windows XP makinesinde pgAdmin yükleyin ve PostgreSQL'e bağlanmayı deneyin.

+0

Çok teşekkürler, ne yazık ki işe yaramadı, yaptığım tüm değişiklikler Windows 7 tarafındaydı ve PostgreSQL hizmetini yeniden başlattığımda, sanal makine IP adresini pg_hba.conf'dan kaldırıncaya kadar tekrar başlamayacaktım, Sanal makine dosyalarına bir şey ekledim mi? – Ali4356

+1

Windows 7 güvenlik duvarını kontrol ettiniz mi? Windows7P'den Windows7'ye ping yapabilir misin? Ayrıca, postgresql adresinin – AndreaBoc

+0

Nvm dude adreslerini dinlediğini kontrol etmek için 'netstat -a -n' komutunu da kullanabilirsiniz, işe yaradı, bir IP adresi sorunuydu, artık bir çekicilik gibi çalışıyor :) – Ali4356

2

Bunu pg_hba.conf dosyanıza eklemeniz ve PostgreSQL'inizi yeniden başlatmanız gerekmektedir.

konak Bütün 192.168.56.1/24 md5

Bu VirtualBox ve yalnızca barındırılan adaptör etkin çalışır

. Virtualbox kullanmıyorsanız, IP adresini değiştirmeniz gerekir.

+0

Teşekkürler ama Microsoft Virtual PC kullanıyorum, hangi IP adresini ekleyeceğimi nasıl bilebilirim? – Ali4356

5

PostgreSQL 9.5.1 kullanarak aşağıda yapılandırmayı takip edin edin: Seçin yol pgAdmin

  • pgAdmin yılında

    1. Açık hg_hba.conf ve açın, daha sonra ayar pg_hba.conf
    2. eklemek
    3. Restart postgresql hizmeti
  • +0

    böylece ağ ip adresiniz 0.0.0.0/0? veya sadece tüm ip adreslerini kabul ediyor mu? – ziggy

    +1

    @ziggy: Tüm IP adresleri. X.X.X.X'in 0.0.0.0/0 kullanmasına izin vermek için. 192.X.X.X'in 192.0.0.0/8 kullanımına izin vermek için. 192.168.X.X'in 192.168.0.0/8 kullanımına izin vermek için. 192.168.1.X kullanımına izin vermek için 192.0.0.0/16. 192.168.1.X'in 192.168.1.0/24 kullanımına izin vermek için. 192.168.1.2 kullanımına izin vermek için 192.168.1.2/32 – JCasso

    1

    Yapılandırmanın değiştirilmesini öneren yukarıdaki yanıtlara ek olarak uri dosyaları pg_hba.conf ve postgresql.conf ve PostGreSQL hizmetinin yeniden başlatılması, bazı Windows 7 bilgisayarlarında da bağlantı noktasını etkinleştirmek için gerekli olabilir (ör. 5432) PostGreSQL sunucusunun alabileceği gelen TCP trafiği için.

    Bilgisayarınızda bunun için gerekliyse, lütfen Windows Güvenlik Duvarı'nı açın ve bağlantı noktası için bir gelen kural ekleyin (ör. 5432). Şimdi, istemci bilgisayardaki pgAdmin'den tekrar bağlanmayı deneyin.

    1

    postgresql.conf

    Düzenleme hba_file.conf dosya sete listen_addresses = '*' sonra ve dosyanın en sonuna aşağıdaki girişi ekleyin: config bulma için

    host all    all    0.0.0.0/0      md5 
    host all    all    ::/0       md5 
    

    this link dosyaları size yardımcı olabilir.

    İlgili konular