PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Zdalne połączenie PostgreSQL z pgAdmin

Przede wszystkim sprawdź, czy możesz połączyć się z bazą danych przez psql :

psql -h ip_address -d name_of_the_database -U username

Jeśli pojawi się błąd odmowy połączenia, musiałeś coś źle skonfigurować i sprawdź Co powinienem sprawdzić, jeśli zdalne połączenie z PostgreSQL nie działa?

psql: could not connect to server: Connection refused Is the server running on host ip_address

Co powinienem sprawdzić, jeśli zdalne połączenie z PostgreSQL nie działa?

  1. Sprawdź konfigurację uwierzytelniania w pg_hba.conf

    Zwykle znajduje się na linuksie - /etc/postgresql/version/main/pg_hba.conf .Powinieneś zezwolić na uwierzytelnianie klienta dla określonego adresu IP ze wszystkich adresów IP:

    # Database administrative login by Unix domain socket
    local     all            postgres        peer
    
    # TYPE  DATABASE        USER            ADDRESS                 METHOD
    
    # "local" is for Unix domain socket connections only
    local     all            all             peer
    # IPv4 local connections:
    host     all             all             0.0.0.0/0               md5
    # IPv6 local connections:
    host     all             all             ::0/0                   md5
    #all ips
    host     all             all             all                     md5
    

    Więcej informacji jak skonfigurować pg_hba.conf można znaleźć w dokumentacji .

  2. Następnie skonfiguruj nasłuchiwanie na określonym porcie.

    Musisz znaleźć postgresql.conf . Zwykle znajduje się /etc/postgresql/9.1/main/postgresql.conf ) i zmień linię na listen_address z:

    #listen_address = ''
    

    do (nie zapomnij usunąć #, co oznacza komentarz):

    listen_address = '*'
    
  3. Po każdym kroku należy ponownie uruchomić usługę Postgresql:

    sudo service postgresql restart
    
  4. Po kroku 2 powinieneś zobaczyć port 5432 (lub 5433) w adresie nasłuchiwania po poleceniu netstat:

    netstat -ntlp
    
  5. Potem musisz otworzyć port dla PostgreSQL w zaporze:

    sudo ufw allow 5432
    

    Możesz sprawdzić ustawienia zapory za pomocą (powinieneś zobaczyć 5432 na liście):

    sudo ufw status
    
  6. Jeśli którykolwiek z poprzednich kroków nie działa, sprawdź, czy PostgreSQL nie działa na innym porcie (zwykle 5433) i powtórz poprzednie kroki.

    Zdarza się to bardzo często, gdy masz więcej działających wersji PostgreSQL lub aktualizujesz bazę danych i zapomniałeś zatrzymać poprzednią wersję PostgreSQL.

Jeśli masz problemy ze znalezieniem plików konfiguracyjnych, możesz sprawdzić ten wątek Gdzie są moje pliki postgres *.conf? .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Używanie QT Designer do tworzenia TableView do bazy danych Postgres

  2. Używanie \COPY do ładowania CSV z polami JSON do Postgres

  3. Sequelize Migration:relacja <table> nie istnieje

  4. PostgreSQL - Wybierz wiersz ze złożoną maksymalną wartością z 2 kolumn

  5. Big Data z PostgreSQL i Apache Spark