PostgreSQL / Dumping 9.0并在9.2中重新导入

时间:2012-10-06 13:11:23

标签: postgresql-9.0 pg-dump postgresql-9.2

在转储数据库9.0时,为了在9.2中重新导入它,我遇到了模式问题。

例如,架构 foo 中的表格栏将按如下方式导出:

SET search_path = foo, pg_catalog;
...
CREATE TABLE bar (
   ...
);
ALTER TABLE foo.bar OWNER TO johndoe;

在9.2中导入此内容无法按预期工作,因为表是在架构'public'中创建的。 ALTER TABLE 语句失败,'错误:关系“foo.bar”不存在'

我认为转储文件中* pg_dump *命令发出的'SET search_path'指令可以设置默认模式(在9.0中导入时可以正常工作),但在9.2中不起作用。

有没有办法让pg_dump输出与显式模式名称不同? 我错过了配置指令吗?

提前感谢您的帮助!

梅西

1 个答案:

答案 0 :(得分:0)

我替换了转储文件中需要显式模式名称的每个元素,它完成了工作...... 没什么大不了的。