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.