【发布时间】:2012-09-01 09:04:07
【问题描述】:
我的意图是转储数据库使用:
pg_dump -U postgres -h localhost -p 5432 MYDB | gzip > database_dump.gz
并将其恢复到另一个环境:
gunzip -c database_dump.gz | ssh 10.10.10.10 \
psql -1 -U postgres -h localhost -p 5432 MYDB
在第二个环境中恢复数据库之前,我将删除现有数据库,以便为新的转储(包含更新的数据)让路。
这是我的问题:我是否需要在我的 pg_dump 语句中指定 -C 参数,以便输出的转储文件包含 CREATE DATABASE 语句?我注意到没有参数,转储文件不包含CREATE DATABASE 语句。
根据 -C 参数的 9.1 文档,“此选项仅对纯文本格式有意义。对于存档格式,您可以在调用 pg_restore 时指定该选项。”我不肯定这意味着什么。正如您在上面看到的,我正在使用 psql 而不是 pg_restore 进行恢复。
【问题讨论】:
标签: postgresql