注册
达梦数据库单表导入导出
专栏/技术分享/ 文章详情 /

达梦数据库单表导入导出

晚安 2026/07/16 199 0 0
摘要

单表导出

./dexp USERID=SYSDBA/'"SJZWJW1@#"'@localhost:5236 FILE=HIS_LAB_DETAIL.dmp DIRECTORY=/dmbak/zjjk2 LOG=HIS_LAB_DETAIL.log COMPRESS_LEVEL=6 PARALLEL=24 TABLE_PARALLEL=16 COL_DEFAULT_SEPARATE=N TABLES="D_URMS"."HIS_LAB_DETAIL" >> /dmbak/zjjk2/HIS_LAB_DETAIL_imp.log 2>&1 &
  1. 性能与并行参数(核心)
    PARALLEL=24:导出作业总并行度为24,即开启24个导出线程同时工作。

TABLE_PARALLEL=16:单表内并行度16,针对大表将数据分片并行读取导出。

组合效应:对于单个大表,实际并发线程数 = 1 × 16 = 16(因为只导1张表,PARALLEL在此场景下主要影响多表并发,单表时由TABLE_PARALLEL主导)。

COMPRESS_LEVEL=6:压缩级别6(范围0-9),平衡压缩率与CPU消耗。适合磁盘空间紧张但CPU充足的场景。

COL_DEFAULT_SEPARATE=N:默认列分隔符策略,保持默认(N),不单独处理默认值列,保证导出兼容性。

  1. 目标对象
    TABLES=“D_URMS”.“HIS_LAB_DETAIL”:仅导出 D_URMS 用户下的 HIS_LAB_DETAIL 这一张表。

  2. 后台运行与日志

/dmbak/zjjk2/HIS_LAB_DETAIL_imp.log 2>&1 &:所有输出追加到日志文件,进程后台运行。

单表导入

./dimp USERID=SYSDBA/'"123"'@localhost:5236 FILE=ARC_PERSON_ARCHIVE.dmp DIRECTORY=/dmdata LOG=ARC_PERSON_ARCHIVE.log COMMIT_ROWS=5000 FAST_LOAD=Y FLDR_ORDER=Y PARALLEL=24 TASK_THREAD_NUMBER=16 DATA_ONLY=Y REMAP_SCHEMA="HZJJK_JBGW":"TEST_DM" >> /dmdata/ARC_PERSON_ARCHIVE_imp.log 2>&1 &
./dimp USERID=SYSDBA/'"123"'@localhost:5236 FILE=ARC_PERSON_EXTEND.dmp DIRECTORY=/dmdata LOG=ARC_PERSON_EXTEND.log COMMIT_ROWS=5000 FAST_LOAD=Y FLDR_ORDER=Y PARALLEL=24 TASK_THREAD_NUMBER=16 LOB_NOT_FAST_LOAD=Y DATA_ONLY=Y REMAP_SCHEMA="HZJJK_JBGW":"TEST_DM" >> /dmdata/ARC_PERSON_EXTEND_imp.log 2>&1 &

  1. 命令整体结构
    ./dimp:执行当前目录下的达梦导入工具。

/dmdata/ARC_PERSON_ARCHIVE_imp.log 2>&1:将标准输出和错误输出都追加到日志文件。

&:将整个进程放入后台运行,释放当前终端。

  1. 核心连接与文件参数
    参数 值 含义
    USERID SYSDBA/’“123”’@localhost:5236 使用 SYSDBA 账户,密码含特殊字符,用单引号+双引号转义,连接本机 5236 端口。
    FILE ARC_PERSON_ARCHIVE.dmp 要导入的源数据文件名。
    DIRECTORY /dmdata 文件所在的目录路径。
    LOG ARC_PERSON_ARCHIVE.log 导入过程的日志文件。
  2. 性能优化参数(核心亮点)
    这部分配置表明这是一次大规模数据导入,对性能要求极高:

COMMIT_ROWS=5000:每插入 5000 行提交一次事务。平衡了内存占用和回滚段压力。

FAST_LOAD=Y:启用快速加载模式(类似 Oracle 的 Direct Path),绕过 SQL 层,直接写入数据文件,极大提升速度。

FLDR_ORDER=Y:按导入文件顺序排序,减少磁盘寻道时间。

PARALLEL=24:并行度 24,开启 24 个并发线程同时处理数据。

TASK_THREAD_NUMBER=16:每个并行任务内部再开 16 个线程处理数据转换。

组合效果:这会极大压榨 CPU 和 I/O 资源,适合千亿级数据量的迁移。

  1. 数据与结构控制
    DATA_ONLY=Y:只导入数据,不导入表结构(索引、约束、触发器、存储过程等)。这意味着目标库 TEST_DM 中必须已存在相同的表结构。

REMAP_SCHEMA=“HZJJK_JBGW”:“TEST_DM”:将原属主 HZJJK_JBGW 的所有对象,导入到目标属主 TEST_DM 下(类似 Oracle 的 REMAP_SCHEMA)。

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服