有插入但没有复制动作的postgres转储

时间:2019-02-13 09:42:17

标签: postgresql dump pg-dump

我正在尝试转储数据库。

由于我在这里无法详细介绍的原因,我无法使用“复制”功能。这意味着insert语句必须是“纯”插入。但是,我不确定如何在转储中反映出来。

当前,这是我的转储命令:

 pg_dump -U myUser --column-inserts --data-only  -h localhost my_db> backup

有人可以告诉我如果没有Copy函数怎么获得插入语句?

1 个答案:

答案 0 :(得分:1)

The documentation of pg_dumps告诉我们:

  

--inserts

     

将数据转储为INSERT命令(而不是COPY)。这会使恢复非常缓慢。它主要用于制作可以装入非PostgreSQL数据库的转储。但是,由于此选项为每一行生成一个单独的命令,因此在重新加载行时发生错误只会导致该行丢失,而不是整个表内容丢失。请注意,如果您重新排列了列顺序,则还原可能会完全失败。 --column-inserts选项可以安全地防止列顺序更改,即使更慢。