我正在将 Postgres 用于 django 项目,并且我目前正在实现一个数据库备份/恢复系统,该系统尽可能简单地在用户单击备份时执行 pg_dump,然后在单击恢复备份时执行 pg_restore。
一切看起来都很好,直到它实际尝试执行 pg_restore 时它给出了这个错误:
pg_restore: [archiver (db)] 来自 TOC 条目 3206 的错误;0 0 COMMENT EXTENSION plpgsql pg_restore: [archiver (db)] 无法执行查询: 错误: must be owner of extension plpgsql 命令是: COMMENT ON EXTENSION plpgsql IS 'PL/pgSQL procedural language';
我已经研究了 plpgsql 是什么等,我明白了,关于错误,我尝试手动将“扩展的所有者”设置为执行脚本并拥有数据库本身的用户,但没有任何改变,这真的很烦人尝试设置所有事物的评论时出错
这一切都是由 pg_dump 自动创建的,因此无法删除注释行,并且没有禁用注释的标志(我知道关闭),所以我真的不知道如何解决这个问题。