首先,这是基于 Copy a PostgreSQL database into another database。我很乐意在那里暴露我的问题,但是我还没有足够的Karma这样做。
这是我的代码:
sourceDB=$1
targetDB=$2
ssh mgf "createdb $targetDB"
pg_dump -C "$sourceDB" | ssh -C mySSHalias "psql $targetDB"
这是输出:
SET
SET
SET
SET
SET
SET
ERREUR: la base de données « mySourceDB » existe déjà
ALTER DATABASE
\connect : option de connexion « -reuse-previous » invalide
所以基本上我的第一个命令是用$ targetDB的名字创建一个数据库,而我的第二个命令试图用$ sourceDB的名字创建一个数据库?
如何使用其他名称在管道的另一端恢复?
答案 0 :(得分:2)
忽略-C
中的pg_dump
标记
此标志导致将CREATE DATABASE
语句添加到转储文件中,这显然不是您想要的。