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

dblink nie używa pliku .pgpass

A teraz db_link() będzie działać w procesie serwera zaplecza jako postgres użytkownika.

Czy Twój .pgpass? plik w odpowiednim miejscu dla postgres użytkownika na maszynie bazy danych?

Jeśli nie, jak oczekujesz, że zostanie przeczytany?

Myślę, że musiałeś coś przeoczyć:

# ls -l /var/lib/postgresql/.pgpass 
-rw------- 1 root root 79 Jun 24 08:10 /var/lib/postgresql/.pgpass

(meanwhile, in psql...)
dblinklocal=# SELECT dblink_connect('conn1', 'hostaddr=127.0.0.1 port=5432 dbname=dblinkremote user=testuser');
ERROR:  could not establish connection
DETAIL:  fe_sendauth: no password supplied

# chown postgres:postgres .pgpass
dblinklocal=# SELECT dblink_connect('conn1', 'hostaddr=127.0.0.1 port=5432 dbname=dblinkremote user=testuser');
 dblink_connect 
----------------
 OK
(1 row)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgresql date_trunc z przesunięciem strefy czasowej o 1 godzinę

  2. Jak filtrować kolumnę tablicy PostgreSQL za pomocą JPA Criteria API?

  3. Rails 4 session.id od czasu do czasu zero

  4. Zwróć dynamiczną tabelę z nieznanymi kolumnami z funkcji PL/pgSQL

  5. Twórz tablicę postgres niestandardowych domen