news 2026/4/17 15:20:02

运维系列数据库系列【仅供参考】:达梦:dmfldr大字段数据装载

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
运维系列数据库系列【仅供参考】:达梦:dmfldr大字段数据装载

dmfldr大字段数据装载

  • dmfldr大字段数据装载
    • 摘要
    • 正文
      • 01 大字段数据导出
        • (1)创建测试表和插入数据
        • (2)编写控制文件
        • (3)执行导出命令
        • (4)查看导出结果
      • 02大字段数据载入
        • 场景一:DIRECT为TRUE
        • 场景二:DIRECT为FALSE




dmfldr大字段数据装载

摘要

本文详细介绍了如何使用DMFldr工具进行大字段类型数据(如BLOB/CLOB)的导出,包括创建测试表、编写控制文件、执行导出命令,并展示了大字段数据载入的不同场景,包括DIRECT=true和DIRECT=false的情况。

正文

dmfldr支持对DM数据库的大字段类型数据的载入和导出,支持的大字段数据类型包括TEXT、LONGVARCHAR、IMAGE、LONGVARBINARY、BLOB以及CLOB。

01 大字段数据导出

当dmfldr工作在导出模式(MODE为OUT)时,生成大字段对应的数据文件名由LOB_FILE_NAME指定,若未指定默认为dmfldr.lob,文件存放目录由LOB_DIRECTORY指定,如果未指定则存放于导出数据文件同一目录。
现将T_TESTLOB表数据导出到文

(1)创建测试表和插入数据

创建T_TESTLOB表,字段ID为自增列,插入测试数据,表结构参考如下:

create table t_testlob(idintidentity,name varchar(20),info1 blob,info2 clob);insert into t_testlob(name,info1,info2)values('张学名',0xabcdef001,'武汉市东湖高新区未来科技城');insert into t_testlob(name,info1,info2)values('陈无良',0xdfdfd234,'江苏省南京市雨花台区花神大道');insert into t_testlob(name,info1,info2)values('马梁',0xfadaaf123,'上海市浦东新区上海市张江高科技园区');insert into t_testlob(name,info1,info2)values('李梅',0xab121032def,'北京市海淀区中关村南大街');insert into t_testlob(name,info1,info2)values('程一航',0xdadde110,'四川省成都市高新区天顺北街');commit;select*fromt_testlob;LINEID NAME TYPE$ NULLABLE----------------------------------1ID INTEGER N2NAME VARCHAR(20)Y3INFO1 BLOB Y4INFO2 TEXT Y
(2)编写控制文件

编辑控制文件/dm8/backup/dmfldr/testlob.ctrl,数据导出至/dm8/backup/dmfldr/testlob.txt文件中,控制文件内容参考如下:

LOAD DATA INFILE'*'INTO TABLE t_testlob FIELDS'|'(ID,NAME,INFO1,INFO2)
(3)执行导出命令

使用dmfldr命令导出数据,执行命令参考如下(注意用户名区分大小写):

/home/dmdba/dmdbms2/bin/dmfldr userid=SYSDBA/SYSDBA@192.168.17.79:5236control=\'/dm8/backup/dmfldr/testlob.ctrl\' data=\'/dm8/backup/dmfldr/testlob.txt\' mode=\'out\' lob_directory=\'/dm8/backup/dmfldr\'lob_file_name=\'testlob.lob\' dmfldr V85rowsisload out Load finish5rows,time:159.805(ms)
(4)查看导出结果

在/dm8/backup/dmfldr/目录下生成testlob.txt和testlob.lob两个文件,执行目录生成导出日志文件。testlob.lob无法直接打开,testlob.txt内容展示如下。

[dmdba@ora79~]$ cat/dm8/backup/dmfldr/testlob.txt1|estlob.lob:0:5|testlob.lob:5:262|estlob.lob:31:4|testlob.lob:35:283||testlob.lob:63:5|testlob.lob:68:344||testlob.lob:102:6|testlob.lob:108:245|estlob.lob:132:4|testlob.lob:136:26

02大字段数据载入

场景一:DIRECT为TRUE

当载入的大字段数据在单独的数据文件中存放时(比如上述导出的大字段数据文件),需指定DIRECT=TRUE方式导入。

非数据库服务器上导入时,指定CLIENT_LOB为TRUE,LOB_DIRECTORY指定为大字段数据文件所在的客户端本地目录;数据库服务器上导入时,则指定CLIENT_LOB为FALSE,LOB_DIRECTORY指定为大字段数据文件所在服务器目录(需先把大字段文件传送到DM服务器)。

大字段数据文件在数据文件中指定,以“文件名:起始偏移:长度”的形式记录在数据文件中。

使用如下命令将上述导出的数据文件testlob.txt和testlob.lob导入到服务器192.168.88.102的T_TESTLOB表中(T_TESTLOB表提前创建):

dmfldr userid=SYSDBA/dameng123@192.168.88.102:5236control=\'/dm8/backup/dmfldr/testlob.ctrl\' data=\'/dm8/backup/dmfldr/testlob.txt\' mode=\'in\' lob_file_name=\'testlob.lob\' client_lob=true lob_directory=\'/dm8/backup/dmfldr\' direct=true set_identity=false
场景二:DIRECT为FALSE

当大字段列数据保存在数据文件中时,需指定DIRECT=FALSE方式导入。BLOB_TYPE参数指定BLOB列内容类型(包含HEX_CHAR和HEX,默认为HEX_CHAR十六进制)。

编辑数据文件testlobdata.txt,内容参考如下:

dmfldr userid=SYSDBA/dameng123@192.168.88.102:5236control='d:/test/testlob.ctrl'data='d:/test/testlobdata.txt'mode='in'direct=false blob_type='hex'







yangeoooo

dmfldr大字段数据装载

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 2:35:13

AI系统成本控制实战:从架构设计到部署优化的完整指南

AI系统成本控制实战:从架构设计到部署优化的完整指南 【免费下载链接】aie-book [WIP] Resources for AI engineers. Also contains supporting materials for the book AI Engineering (Chip Huyen, 2025) 项目地址: https://gitcode.com/GitHub_Trending/ai/aie…

作者头像 李华
网站建设 2026/4/18 2:35:06

缠论可视化终极指南:简单构建专业量化分析平台

缠论可视化终极指南:简单构建专业量化分析平台 【免费下载链接】chanvis 基于TradingView本地SDK的可视化前后端代码,适用于缠论量化研究,和其他的基于几何交易的量化研究。 缠论量化 摩尔缠论 缠论可视化 TradingView TV-SDK 项目地址: ht…

作者头像 李华
网站建设 2026/4/18 0:19:07

IndexTTS2终极指南:从零基础到精通语音合成

你是否曾因传统语音合成系统无法精准控制语速和情感而苦恼?IndexTTS2横空出世,彻底改变这一局面!作为业界首个兼具精确时长控制与自然韵律生成的自回归零样本TTS模型,它重新定义了语音合成的可能性边界。 【免费下载链接】index-t…

作者头像 李华
网站建设 2026/4/18 2:34:56

Easy Dataset:三分钟开启你的专属LLM微调之旅

还在为复杂的模型微调流程而苦恼吗?面对海量文档、繁琐的数据预处理,是否渴望有一款工具能让你专注于核心业务?Easy Dataset正是为简化LLM微调而生的智能助手,让你在3分钟内完成部署,立即开始构建高质量微调数据集。 【…

作者头像 李华
网站建设 2026/4/18 2:32:10

React 动态显示icon

通过ant-design/icons引入Icon大对象,通过Icon[icon名]获取对应的对象,在需要添加icon的地方调用React.createElement就可以显示icon。import { Button } from "antd" import React from react import * as Icon from ant-design/icons;func…

作者头像 李华
网站建设 2026/4/18 2:32:48

42、Linux编程:软件开发工具探索

Linux编程:软件开发工具探索 1. 编程基础概念 在编程中,有一个常见的流程被称为编辑 - 编译 - 调试(Edit - Compile - Debug)循环,大多数程序员在程序正确运行之前都需要多次重复这个过程。除了了解基本的编程步骤,还需要熟悉以下术语和概念: - 变量 :用于存储不同…

作者头像 李华