我正在尝试转储我的数据库。
由于我不能在这里详细说明的原因,我无法使用“复制”功能。这意味着insert语句必须是“纯”插入。但是,我不知道如何在我的转储中反映这一点。
目前,这是我的dump命令:
pg_dump -U myUser --column-inserts --data-only -h localhost my_db> backup
任何人都可以告诉我如何在没有Copy
函数的情况下获得insert语句?
The documentation of pg_dumps
告诉我们这个:
--inserts
将数据转储为INSERT命令(而不是COPY)。这将使恢复非常缓慢;它主要用于创建可以加载到非PostgreSQL数据库的转储。但是,由于此选项为每一行生成单独的命令,因此重新加载行时出错只会导致该行丢失而不是整个表内容。请注意,如果重新排列了列顺序,则还原可能会完全失败。 --column-inserts选项对于列顺序更改是安全的,但速度更慢。