PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Wie können Sie in pg_restore eine Postgres-Verbindungszeichenfolge verwenden, um den Host/die Datenbank/den Benutzernamen/das Kennwort anzugeben?

In PostgreSQL-Tools können Sie überall dort, wo Sie einen Datenbanknamen angeben können, stattdessen eine Verbindungszeichenfolge angeben.

In der Syntax für pg_restore Der Datenbankname wird mit einem Flag übergeben, nicht als Positionsparameter:

$ 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
  ...

Sie sollten also verwenden:

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

Ja, dieser Unterschied in der Benutzeroberfläche zwischen pg_dump und pg_restore scheiße, und ich wünschte, wir könnten es ändern, aber jetzt ist es ein bisschen spät.