PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Dans pg_restore, comment pouvez-vous utiliser une chaîne de connexion postgres pour spécifier l'hôte/la base de données/le nom d'utilisateur/le mot de passe ?

Dans les outils PostgreSQL, partout où vous pouvez spécifier un nom de base de données, vous pouvez à la place spécifier une chaîne de connexion.

Dans la syntaxe de pg_restore le dbname est passé avec un indicateur, pas en tant que paramètre positionnel :

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

vous devriez donc utiliser :

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

Oui, cette incompatibilité d'interface utilisateur entre pg_dump et pg_restore ça craint, et j'aimerais pouvoir le changer, mais il est un peu tard maintenant.