我有一个包含多个表的数据库,我想将选择的数据和结构添加到包含已有不同表的不同数据库中。
我已按以下方式创建了转储文件:
"C:\Program Files\PostgreSQL\9.1\bin\pg_dump.exe" -U postgres -w DBName -t table1 -t Table2 -t Table3 > "E:\Dump.sql"
这很好用,我有E:\ Dump.sql,其中包含三个表的转储。 我尝试使用以下代码进行恢复:
"C:\Program Files\PostgreSQL\9.6\bin\pg_dump.exe" -C -U User -t table1 -t Table2 -t Table4 destdb < Dump.sql
但我收到了错误
找不到匹配的表格
我在哪里做错了?
答案 0 :(得分:1)
https://www.postgresql.org/docs/current/static/backup-dump.html
pg_dump
用于**备份,手册的下一部分用于恢复备份:
pg_dump创建的文本文件旨在由psql读入 程序。恢复转储的常规命令表单是
psql dbname < infile
另外你提到三张桌子,其中两张是大小写的 - 为了让它起作用,你必须加倍引用它我相信。但无论如何 - 为你恢复文件将是:
psql YOURDBNAME -f E:\Dump.sql