博客
关于我
pg_bulkload
阅读量:388 次
发布时间:2019-03-05

本文共 2133 字,大约阅读时间需要 7 分钟。

作者:瀚高PG实验室 (Highgo PG Lab)- 天蝎座

[highgo@hgdb ~]$ pg_config |grep CONFIGCONFIGURE = '--prefix=/opt/HighGo/db/hgdb4_enterprise' '--enable-nls=zh_CN zh_TW' '--with-perl' '--with-python' '--without-tcl' '--without-gssapi' '--without-pam' '--with-ldap' '--without-bonjour' '--with-openssl' '--with-libxml' '--with-libxslt' '--enable-thread-safety' '--with-zlib' '--without-selinux' '--with-ossp-uuid' '--with-pgport=5866' '--with-hgdb-extra-version=Enterprise Edition' 'LDFLAGS=-llber'highgo=# \d myt             Table "public.myt" Column |         Type          | Modifiers --------+-----------------------+----------- id     | integer               |  nm     | character varying(20) | highgo=# \! head /tmp/file.csv1,Fa,Shighgo=# truncate myt;TRUNCATE TABLEhighgo=# copy myt from '/tmp/file.csv' with csv;ERROR:  22P02: invalid input syntax for integer: "a"CONTEXT:  COPY myt, line 2, column id: "a"highgo=# select * from myt; id | nm ----+----(0 rows)

报错以后发现,第二行出错了,之前的行也看不到数据。

如果在大量的数据copy时,假如出现问题,那么整个copy过程都是失败的,
并且数据实际占用磁盘空间,但是无法访问。
如果我们想继续加载过程而忽略错误,可以使用pg_bulkload工具。

highgo=# create extension pg_bulkload;CREATE EXTENSIONhighgo=# select * from pg_available_extensions where name='pg_bulkload';    name     | default_version | installed_version |                             comment                             -------------+-----------------+-------------------+------------------------------------------------ pg_bulkload | 1.0             |                   | pg_bulkload is a high speed data loading utility for PostgreSQL(1 row)highgo=# create extension pg_bulkload;CREATE EXTENSION[highgo@hgdb ~]$ cat /tmp/file.ctl TYPE = CSVINPUT = /tmp/file.csv			  DELIMITER=","                     #分隔符TABLE = myt         LOGFILE = /tmp/blk.log			  #日志文件PARSE_BADFILE = /tmp/parse.csv    #坏数据记录[highgo@hgdb ~]$ pg_bulkload /tmp/file.ctl -d highgoNOTICE: BULK LOAD STARTNOTICE: BULK LOAD END	0 Rows skipped.	1 Rows successfully loaded.	1 Rows not loaded due to parse errors.	0 Rows not loaded due to duplicate errors.	0 Rows replaced with new rows.WARNING: some rows were not loaded due to errors.[highgo@hgdb ~]$ more /tmp/parse.csva,S

转载地址:http://oiowz.baihongyu.com/

你可能感兴趣的文章
Netty线程模型理解
查看>>
netty解决tcp粘包和拆包问题
查看>>
Netty速成:基础+入门+中级+高级+源码架构+行业应用
查看>>
Netty遇到TCP发送缓冲区满了 写半包操作该如何处理
查看>>
Netty:ChannelPipeline和ChannelHandler为什么会鬼混在一起?
查看>>
Netty:原理架构解析
查看>>
Network Dissection:Quantifying Interpretability of Deep Visual Representations(深层视觉表征的量化解释)
查看>>
Network Sniffer and Connection Analyzer
查看>>
Network 灰鸽宝典【目录】
查看>>
Networkx写入Shape文件
查看>>
NetworkX系列教程(11)-graph和其他数据格式转换
查看>>
Networkx读取军械调查-ITN综合传输网络?/读取GML文件
查看>>
network小学习
查看>>
Netwox网络工具使用详解
查看>>
Net与Flex入门
查看>>
net包之IPConn
查看>>
Net操作配置文件(Web.config|App.config)通用类
查看>>
Neutron系列 : Neutron OVS OpenFlow 流表 和 L2 Population(7)
查看>>
New Relic——手机应用app开发达人的福利立即就到啦!
查看>>
NFinal学习笔记 02—NFinalBuild
查看>>