文档介绍:Informix数据装卸技术
unload/load –锁情况
Load支持事务
并发load数据
,失败后可以回滚本次装载的记录;
begin work;
load f提交记录数定义
-p 失败情况:提交或者放弃
-i 从文件第几行开始,默认为第一行记录
-r 导入过程对表不加排他锁
-X 识别16进制数据
-k 导入过程对表加排他锁
dbload
命令文件
FILE filename DELIMITER ‘|’ nfields
INSERT INTO tablename [(column) values (f01,f02,…)]
Filename 定义输入文件名
‘|’ 分隔符号,这里为“|”,可以定义为其他的符号
nfields 定义每行记录的列数
tablename 定义导入的目的表
[(column) values] 为可选项 f01为文件的第一列,依次类推
举例说明
导入说明
数据库名:demodb
控制文件名:
错误日志文件名:
每次提交的数据条数:100000
数据文件名:
数据字段分隔符: “|”
每行数据的字段数据: 14
要插入的数据表名:tab
应用命令如下:
dbload -d demodb -c -l -n 100000;
内容:
-------------------------------------------
file “" delimiter "|" 14 ;
insert into tab;
dbload优点
由于有容错能力,可以用来重复导入数据,已有记录保留不变,只增加新增记录
可以指定分批提交记录数,从而能有效处理大数据量的表的导入
对导入失败数据进行记录到指定文件中,可以帮助使用者快速找到有问题的记录信息
可以指定文件记录开始行信息
通过命令文件,灵活定义导入文件数据的格式
议程
unload/load
unonload/onload
dbload
dbexport/dbimport
HPL
External table
dbexport
dbexport
dbexport <database> [-X] [-c] [-q] [-d] [-ss] [{ -o <directory> | -t <tapedevice>
-b <blocksize> -s <tapesize> [-f <sql-command-file>] }]
其中主要选项说明如下:
-c 如果没有发生致命错误,则输出全部信息
-d 仅输出blob描述符,不输出blob数据
-q 在标准输出设备上不显示错误信息,警告和所生成的SQL数据定义语句
database 指定卸出的数据库名
-o directory 命名存储ASCII数据文件和模式文件的磁盘目录
-t tapedevice 指定存储ASCII数据文件和模式文件的磁带设备路径
-b blocksize 指定磁带设备块大小(单位:KB)
-s tapesize 指定磁带所能存储的数据总量(单位:KB)
-f sql-command-file 指定存于磁盘上的模式文件
dbimport
dbimport
dbimport实用程序的语法:
-c 指示dbimport在没有发生致命错误的情况下完成装入工作。
-q 指示在标准输出设备上不显示错误信息和警告。
输入文件位置选项:
-i 指定存储ASCII文件和模式文件的磁盘目录,以便dbimport查找。
-t 指定含有ASCII文件和模式文件的磁带设备名。
-b 指定磁带设备块大小。block以KB为单位,该值必须能为所使用的设备接受。
-s 指定磁带的最大数据存储量。
-f 指定磁盘上模式文件的路径名,以便dbimport查找模式文件,并以此为输入建立数据库。
建库选项:
-d 指定用来存储新建数据库的OnLine数据库空间(dbspace)。如果没有使用-d选项指定dbspace,则数据库缺省建立在根dbspace(rootdbs)中。
-l 如果没有使用buffered参数,为装入的数据库建立无缓冲事务日志;如果使用了buffered参数,为装入的数据库建立有缓冲事务日志。-l选项等价于CREATEDATABASE语句的WITH LOG字句。如果没有使用-l选项