尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

pg_dump 导出部分清单下的表 类似 oracle include

pg_dump 导出部分清单下的表 类似 oracle include 尽管pg_dump支持导出的-t选项进行模糊匹配也支持-T来排序不需要导出的表。但实际应用中我们往往经常会碰到需要碰到比方说用户给了一个表清单说要把这些表都导出来这种时候如果一张张去匹配不仅工作量大而且pg_dump的命令也会很长。技巧一根据文件导出指定表这里给出一个简单的脚本参考下用来满足这种需求pg_dump -d database_name $(cat table_list.txt | xargs -I % echo -t %) file_name.sql上面的脚本中我们将需要导出的表名写入table_list.txt文件中即可。技巧二根据query 导出指定数据除此之外还有个经常碰到问题。pg_dump有没有类 似Oracle中expdp的query选项呢即根据查询结果导出某张表数据。pg_dump是不支持该功能的比较常见的做法是根据查询创建张临时表然后进行导出。初次之外我们也可以利用copy命令支持过滤的功能来间接实现使用 pg_dump 命令来生成表的 DDL然后使用 psql 命令和 COPY 命令将数据导出到文件中。1、pg_dump导出表结构pg_dump -U username -s -t tablename dbname schema.sql2、copy导出数据psql -U username -d dbname -c COPY (SELECT * FROM tablename WHERE columnname value) TO STDOUT data.sql
返回列表