在恢复某些数据库备份时,我注意到pg_dump实际上使用的是INSERTS而不是COPY。我甚至没有指定-d标志,但它仍然在我尝试转储的每个数据库/表中使用INSERTS,这就是为什么恢复需要数小时而不是分钟。
根据pg文档,pg_dump默认情况下应该使用COPY,但在我的情况下,它不是。有没有办法确保pg_dump使用COPY?
这是pg_dump命令:
pg_dump -Fp -t some_table -h localhost -d thisDB -f / some_dir / bkup
有什么想法吗?
THX。
答案 0 :(得分:4)
你 指定-d !!!!!:
pg_dump -Fp -t some_table -h localhost -d thisDB -f /some_dir/bkup
^^^^
幸运的是-d is no more。
答案 1 :(得分:1)
在您发布的命令行中,您实际上指定了-d标志,尽管您似乎尝试使用它来指定要使用的数据库。请尝试以下方法:
pg_dump -Fp -t some_table -h localhost -f /some_dir/bkup thisDB