如何在Postgres中不受限制地导出表备份

问题描述

如何在Postgres中导出没有约束和触发器的表备份

我们正在使用以下命令

pg_dump -h主机名-p 5432 -U postgres -d db -t --disable-triggers table -v -f“ table.backup”

但是要跳过约束,我们在postgres中可以选择吗?

解决方法

这应该转储文件,grep语句将删除包含“ TRIGGER”的行:

pg_dump -h hostname -p 5432 -U postgres -d db -t --disable-triggers --format=p table | grep -v TRIGGER > "table.backup"

P.S。假定表的数据中没有单词“ TRIGGER”。

编辑:在Windows上应该可以:

pg_dump -h hostname -p 5432 -U postgres -d db -t --disable-triggers --format=p table | FINDSTR /V TRIGGER > "table.backup"