欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

达梦数据库之快速加载数据【达梦数据库技术系列】

程序员文章站 2022-03-03 20:13:37
...

【dmfldr】(DM Fast Loader)是 DM7 提供的快速数据装载命令行工具。用户通过使 用 dmfldr 工具能够把按照一定格式排序的文本数据以简单、快速、高效的方式载入到 DM 数据库中,或把 DM 数据库中的数据按照一定格式写入文本文件。
当进行数据载入时,dmfldr 客户端接收用户提交的命令与参数,分析控制文件与数据文件,将数据打包发送给服务器端的 dmfldr 模块,由服务器完成数据的真正装载工作。 并分析服务器返回的消息,必要时根据用户参数指定生成日志文件与错误数据文件。

dmfldr 使用语法如下:

dmfldr USERID=SYSDBA/SYSDBA CONTROL=‘c:\fldr.ctl’

测试过程:

  1. 准备数据文件 test.txt, 数据以“,”分隔;
c1,c2,c3
1,2,3
4,5,6
7,8,8
  1. 在数据库中创建表结构
SQL> create table test
(c1 int  primary key,
c2 int,
c3 int)
  1. 创建控制文件test.ctl
test.ctl
LOAD DATA
INFILE '/home/dmdba/test.txt'
INTO TABLE test
FIELDS ','
  1. 导入数据
$ dmfldr sysdba/SYSDBA control='/home/dmdba/test.ctl'   skip=1 

skip 参数让dmfldr 忽略第一行数据,数据文件中第一行数据是列名而非数据

  1. 查询导入的成功和失败的日志(fldr.log和fldr.bad),根据日志检查有无错误项,确定数据完全导入到数据库中

总结:
使用dmfldr可以快速有效的加载大量的数据,并保证数据的一致性和有效性,并且配置和使用比较简单。

【特别说明】在 DM7 数据守护主备环境下,如果 dmfldr 数据载入中发生主备切换,dmfldr 支持 主备切换完成后自动继续装载数据,并且能保持数据正确。

相关标签: 数据库