PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

In pg_restore, come puoi utilizzare una stringa di connessione postgres per specificare host/database/nome utente/password?

Negli strumenti PostgreSQL, ovunque tu possa specificare un nome di database, puoi invece specificare una stringa di connessione.

Nella sintassi per pg_restore il dbname viene passato con un flag, non come parametro posizionale:

$ pg_restore --help
pg_restore restores a PostgreSQL database from an archive created by pg_dump.

Usage:
  pg_restore [OPTION]... [FILE]

General options:
  -d, --dbname=NAME        connect to database name
  ...

quindi dovresti usare:

pg_restore -d 'postgres://userb:[email protected]:5432/otherdatabase' dump.dump

Sì, quell'interfaccia utente non corrisponde a pg_dump e pg_restore fa schifo, e vorrei che potessimo cambiarlo, ma ora è un po' tardi.