1. COPY命令

1.1 postgres

postgres的COPY命令可以快速的导出/导入数据到postgresql数据库中,支持常用的文件格式,如:txt、sql、csv、压缩文件、二进制格式等。特别适合批量导出和导入数据,速度比较快。

COPY TO把一个表的所有内容都拷贝到一个文件;
COPY FROM从一个文件里拷贝数据到一个表里(把数据附加到表中已经存在的内容里)。

注意:
COPY只能用于表,不能用于视图。

1.2 GreenPlum

对于数据的加载,GreenPlum数据库也提供了copy工具(源于PostgreSQL数据库),使用方法同postgres数据库的copy命令。copy命令支持文件与表之间的数据的导入和导出。

注意:
使用copy命令进行数据导入时,数据需要经过Master节点分发到Segment节点;同样使用copy命令进行数据卸载,数据也需要由Segment发送到Master节点,由Master节点汇总后再写入外部文件。这样就限制了数据加载与卸载的效率,但是数据量较小的情况下,copy命令就非常方便。

当数据量比较大时可以考虑使用GreenPlum的gpload工具来导入。


2. 使用copy命令导出/导入数据的步骤

通常使用psql工具来进行数据的导出和导入。

2.1 准备工作

(1) 创建用于存放导出文件(或待导入文件)的目录,并赋予权限;

注意:
使用root用户

# 创建目录
[root@node8 /]# mkdir /tmp/data# 赋予权限
[root@node8 /]# chmod 777 /tmp/data/
(2) 进入psql并切换数据库

注意:
如果是postgres数据库,则切换到postgres用户;
如果是GreenPlum的MPP,则切换到gpadmin用户;

# 由于我使用的是GreenPlum的MPP,所以切换gpadmin用户
# ---------------------------------------------------------
[root@node8 ~]# su - gpadmin# 进入psql
[gpadmin@node8 ~]$ psql# 使用`\c`命令切换数据库,切换到要导出或导入数据的数据库
# ---------------------------------------------------------
postgres=# \c resdata
You are now connected to database "resdata" as user "gpadmin".

3. 开始使用copy命令导出或导入数据

# 使用 copy 命令将 resdata 库下的 aa_test 表中的数据导出到 /tmp/data/test.csv 文件中
# ---------------------------------------------------------
resdata=# COPY aa_test TO '/tmp/data/test.csv' WITH csv;
COPY 2# 使用 copy 命令将 /tmp/data/test.csv 文件中内容导入到 resdata 库下的 aa_test 表中
# ---------------------------------------------------------
resdata=# COPY aa_test  FROM '/tmp/data/test.csv' WITH csv;
COPY 2

COPY TO还能拷贝SELECT查询的结果。如果声明了一个字段列表,COPY将只在文件和表之间拷贝已声明字段的数据。 如果表中有任何不在字段列表里的字段,那么COPY FROM将为那些字段插入缺省值。

# 使用select命令
COPY (select * from bb_test capture_time > '2018-08-16 00:00:00' and capture_time < '2018-08-17 00:00:00') TO '/tmp/data/test_20180816.csv' with csv;

使用GreenPlum/postgres的copy命令导出/导入数据相关推荐

  1. mysql TMM_mysql使用命令导出导入数据(数据备份、恢复)

    1.使用mysql进行数据备份.恢复我们使用最多是的Navicat for MySQL客户端工具: 数据备份: DataBase(选中数据) – > Dump SQL File(转储SQL文件) ...

  2. MySQL使用命令导出/导入数据

    导出数据库文件 常用命令 mysqldump -uroot -pMyPassword databaseName tableName1 tableName2 > /home/foo.sql mys ...

  3. mysql 软件导出导入数据_MySQL 之 导出导入数据

    mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -u root -p --databases db_name > test_db.sql       ...

  4. mysql 导入导出 csv_mysql 导出导入数据 -csv

    MySql数据库导出csv文件命令: mysql> select first_name,last_name,email from account into outfile 'e://output ...

  5. 如何使用 MySQL 的 IDE 导出导入数据表文件(以 Navicat for MySQL 导出导入 Excel 文件为例)

    系列文章目录 关于更多 MySQL 数据库以及数据库 IDE 的问题大家可以移步本人专栏--MySQL 数据库. 文章目录 系列文章目录 前言 一.使用 Navicat 导出数据表 1.1.使用&qu ...

  6. Postgres 数据库大批量单表导入数据引发性能故障的处理

    因公司经营管理策略原因,我们地区部门还是以开发外包和产品服务为主,对测试外包服务销售工作要求占比不高,而测试部门本来有四五个性能测试人员,加上老员工都比较积极做事在测试团队建设管理上不用花费太多精力. ...

  7. oracle11g 使用数据泵导出导入数据

    oracle11g 使用数据泵导出导入数据 终于搞定了 快写个笔记 记录下. 删除用户的时候提示已经登录了不能删除,这个需要把登录的session结束掉. select username,sid,se ...

  8. Postman 实现备份数据 Postman恢复数据 postman 导出导入数据 postman 导入导出数据

    Postman 实现备份数据 Postman恢复数据 postman 导出导入数据 postman 导入导出数据 一.需求描述 在使用postman调试接口时,若遇到内网的环境,无法通过账户同步数据: ...

  9. 数据导不进oracle数据库,学习笔记:Oracle逻辑导出/导入 数据逻辑导出时跳过指定表不进行导出...

    天萃荷净 Oracle数据库逻辑exp导出时,跳过指定某些表,对其表中数据不进行导出 有一个需求,某个用户有很多张表,但是只能使用exp导出,而且想跳过其中某几张表,其他对象包括依赖关系都需要.针对这 ...

最新文章

  1. 反射 Class类和Class实例
  2. [新手必备]Python 基础入门必学知识点笔记
  3. Thinkphp 3.2中控制页面不缓存
  4. 201521123059 《Java程序设计》第八周学习总结
  5. 【C语言】 删除一个字符串中重复的字符
  6. java精确度_java的数值精度问题 | 学步园
  7. 社交游戏Zynga之死
  8. 弄了一个数学论坛,感觉不错,欢迎加入讨论
  9. centos上自动执行脚本执行php文件
  10. dat文件导入cad画图步骤_Cad小技巧——表格文件如何导入至CAD
  11. Linux开发板烧录实验
  12. angularjs技术
  13. 文华学院计算机专业考研,英语复试第1,初试375分,她从文华学院跨专业考研华中科技大学...
  14. Tracup丨产品管理与项目管理的区别
  15. matplotlib 绘图非洲国家GDP排行前12的国家python
  16. Understanding the Users and Videos by Mining a Novel Danmu Dataset
  17. 武汉大学IT职业培训
  18. mysql 3日内_一门三父子
  19. 2017.7.27 计算机编程培训第二天
  20. 云笔记是干什么用的,看云笔记的优点和使用心得分享

热门文章

  1. 学习人工智能第四周:聚类和自然语言处理
  2. 一篇文章入门Word2Vec
  3. 方正计算机驱动程序,方正Founder A5000 驱动
  4. 超级电容器初级加八卦
  5. Navicat_12安装与破解教程
  6. QLogic利润大涨700% 被收购后前景如何?
  7. 华为QUIDWAY系列路由器的负载均衡配置
  8. 物理机上架设云服务器
  9. DevStore热门免费优秀资源推荐(123月合集)
  10. SIGCOMM 21 CocoSketch:High-Performance Sketch-based Measurementover Arbitrary Partial Key Query 论文阅读