DM8:dexp&dimp-逻辑导出--逻辑导入

本文详细介绍了DM8数据库使用dexp和dimp工具进行逻辑导出与导入的命令参数,包括全库、用户权限和模式级别的导出与导入,以及各种高级参数的使用,如FUZZY_MATCH、QUERY、PARALLEL、EXCLUDE、INCLUDE等,用于定制化的数据管理操作。
摘要由CSDN通过智能技术生成

注意事项

事项详情
版本要求目的客户端版本向下兼容,对目的端导入的DMP文件要求:源端导出的客户端版本号要低于导入目的端客户端版本号,例如: 源端版本为DM8.1-2-18-21.11.11,目的端客户端版本要高于或等于DM8.1-2-18-21.11.11的版本,否则报错:无法解析DMP文件,请使用更高的版本工具
实例参数1 页大小;2 簇大小;3 字符集编码;4 大小写是否敏感;5 VARCHAR类型是否以字符为单位;其中1-3要保持一致,4-5可以配置 IGNORE_INIT_PARA 忽略差异
导出类型1 全库导出的DMP,目的端需要全库导入,2 按用户权限导出的DMP,目的端所使用用户权限要保持一致,3 按模式名导出的DMP,目的端需要按模式名对应导入
导出导入用户模式不同在目的端导入时,可以使用命令行配置参数 REMAP_SCHEMA 映射源端模式名与目的端模式名;例如 已经从SYSDBA模式导出的DMP文件,现在要导入DMHR模式,添加参数 REMAP_SCHEMA =SYSDBA:DMHR

1 dexp逻辑导出dmp文件

1.1 全库导出命令附加的参数信息

参数名参数值
用户名SYSDBA
密码SYSDBA
IP地址192.168.100.100
端口号5277
数据库导出方式数据库采用FULL方式,全库完全导出(dm8.2 专用机不可用此方法)
导出数据文件名db5277_230106.dmp
导出的日志文件名db5277_230106.log
导出文件的路径/home/dmdba/

命令:

  • 进入数据库bin执行目录
cd /home/dmdba/dmdbms/bin
./dexp USERID=SYSDBA/SYSDBA@192.168.100.100:5277 DIRECTORY=/home/dmdba FILE=db5277_230106.dmp LOG=db5277_230106.log FULL=Y

1.2 导出用户所拥有权限的数据库对象-命令附加的参数信息

参数名参数值
用户名DM
密码DM7777777
IP地址192.168.100.100
端口号5277
数据库导出方式数据库采用OWNER方式,导出一个或多个用户所拥有的所有对象
导出数据文件名db5277_230106.dmp
导出的日志文件名db5277_230106.log
导出文件的路径/home/dmdba/
  • 进入数据库bin执行目录
cd /home/dmdba/dmdbms/bin
./dexp USERID=DM/DM7777777@192.168.100.100:5277 DIRECTORY=/home/dmdba FILE=db5277_230106.dmp LOG=db5277_230106.log OWNER=DM

1.3 导出用户拥有的模式的数据库对象-命令附加的参数信息

参数名参数值
用户名DM
密码DM7777777
IP地址192.168.100.100
端口号5277
数据库导出方式数据库采用SCHEMAS方式,模式列表,导出一个或多个模式下的所有对象
导出数据文件名db5277_230106.dmp
导出的日志文件名db5277_230106.log
导出文件的路径/home/dmdba/

命令:

  • 进入数据库bin执行目录
cd /home/dmdba/dmdbms/bin
./dexp USERID=DM/DM7777777@192.168.100.100:5277 DIRECTORY=/home/dmdba FILE=db5277_230106.dmp LOG=db5277_230106.log SCHEMAS=DM

2 dimp–逻辑导入dmp文件

2.1 全库导入dmp数据文件-命令附加的参数信息

参数名参数值
用户名SYSDBA
密码SYSDBA
IP地址192.168.100.100
端口号5277
数据库导入方式数据库采用FULL方式全库完全导入(dm8.2 专用机不可用此方法)
导入数据文件名db5277_230106.dmp
导入的日志文件名db5277_230106.log
导入文件的路径/home/dmdba/
  • 进入数据库bin执行目录
cd /home/dmdba/dmdbms/bin
./dimp USERID=SYSDBA/SYSDBA@192.168.100.100:5277 DIRECTORY=/home/dmdba FILE=db5277_230106.dmp LOG=dimpdb5277_23010601.log FULL=Y

2.2 按用户导入dmp数据文件-命令附加的参数信息

参数名参数值
用户名DM
密码DM7777777
IP地址192.168.100.100
端口号5277
数据库导入方式采用OWNER导入指定的用户名下的模式
导入数据文件名db5277_230106.dmp
导入的日志文件名db5277_230106.log
导入文件的路径/home/dmdba/
  • 进入数据库bin执行目录
cd /home/dmdba/dmdbms/bin
./dimp USERID=DM/DM7777777@192.168.100.100:5277 DIRECTORY=/home/dmdba FILE=db5277_230106.dmp LOG=dimpdb5277_23010602.log OWNER=DM

2.3 按模式导入dmp数据文件-命令附加的参数信息

参数名参数值
用户名DM
密码DM7777777
IP地址192.168.100.100
端口号5277
数据库导入方式采用OWNER导入指定的用户名下的模式
导入数据文件名db5277_230106.dmp
导入的日志文件名db5277_230106.log
导入文件的路径/home/dmdba/
  • 进入数据库bin执行目录
cd /home/dmdba/dmdbms/bin
./dimp USERID=DM/DM7777777@192.168.100.100:5277 DIRECTORY=/home/dmdba FILE=db5277_230106.dmp LOG=dimpdb5277_23010602.log SCHEMAS=DM

2.4 模式映射,若目的表存在则先清空数据再导入数据

  • DMA2 导出的dmp,并导入DM中
  • 进入数据库bin执行目录
cd /home/dmdba/dmdbms/bin
./dimp USERID=DM/DM7777777@192.168.100.100:5277 DIRECTORY=/home/dmdba FILE=db5277_230106.dmp LOG=dimpdb5277_23010602.log REMAP_SCHEMA=DMA2:DM TABLE_EXISTS_ACTION=TRUNCATE

3 DM8: dexp逻辑导出更多参数介绍

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.1 dexp 参数详解

2.3.2 普通参数
普通参数中介绍了具有一些专门用途的可选参数。

2.3.2.1 FUZZY_MATCH
FUZZY_MATCH 用于指定 TABLES 选项是否支持模糊匹配。可选参数,缺省为 N。
语法如下:
FUZZY_MATCH=N/Y
N:TABLES 选项不支持模糊匹配,指定的表名与数据库中的表名必须精确匹配,缺省值;
Y:TABLES选项支持模糊匹配,指定的表名与数据库中的表名采用LIKE模糊查询匹配。
例 导出 OTHER 模式下以"R"开头的表。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log TABLES=OTHER.R% FUZZY_MATCH=Y
2.3.2.2 QUERY
QUERY 用于指定过滤条件来对表数据进行导出。可选参数。
语法如下:
QUERY="<where_condition>"
<where_condition>:过滤条件。更详细了解请参考《DM8_SQL 语言使用手册》的
<WHERE 子句>。
例 导出 OTHER.READER 表中满足"WHERE AGE=19"条件的数据。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log TABLES=OTHER.READER QUERY="WHERE AGE=19"
2.3.2.3 PARALLEL
PARALLEL 用于指定导出的过程中所使用的线程数目。可选参数,缺省为单线程。
如果CPU 核心数为 N 的话,那一般来说 PARALLEL 为 N 或者 N+1 最合适。
语法如下:
PARALLEL=<num>
<num>:线程数。整数类型,取值范围:1~100,缺省为1。
例 设置 PARALLEL=2 时则线程数为 2。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log FULL=Y DIRECTORY=/mnt/data/dexp PARALLEL=2
2.3.2.4 TABLE_PARALLEL
TABLE_PARALLEL 用于指定导出每张表所使用的线程数。可选参数,缺省为单线程。
如果 CPU 核数为 N 的话,那一般来说 TABLE_PARALLEL 为 N 或者 N+1 最合适。
在 MPP 模式下会转换成单线程。
语法如下:
TABLE_PARALLEL=<num>
<num>:线程数。整数类型,取值范围:1~50,缺省为 1。
例 设置 TABLE_PARALLEL=3 时则线程数为 3。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log FULL=Y DIRECTORY=/mnt/data/dexp TABLE_PARALLEL=3
2.3.2.5 TABLE_POOL
TABLE_POOL 用于设置导出过程中存储表数据的缓冲区个数。可选参数。
语法如下:
TABLE_POOL=<num>
<num>:存储表数据的缓冲区个数。整数类型,取值范围:1~20,缺省为 1。
TABLE_PARALLEL 固定的情况下,导出时间随着 TABLE_POOL 个数的增
加而减少。当 TABLE_POOL 稍大于 TABLE_PARALLEL 时结果为最优。
例 设置 TABLE_POOL=3 时。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log FULL=Y DIRECTORY=/mnt/data/dexp TABLE_POOL=3
2.3.2.6 EXCLUDE
EXCLUDE 用来批量设置导出时忽略的对象种类。可选参数。
语法如下:
EXCLUDE=(<对象种类名>{,<对象种类名>})
或
EXCLUDE=TABLES:<表名>{,<表名>}
或
EXCLUDE=SCHEMAS:<模式名>{,<模式名>}
<对象种类名>:包括 CONSTRAINTS、INDEXES、ROWS、TRIGGERS、GRANTS。
如 果 导 出 方 式 为 TABLES 表 级 或 SCHEMAS 模式级 导 出 时 ,
EXCLUDE=SCHEMAS:<模式名>{,<模式名>}排除模式不起作用。
例 设置 EXCLUDE=(CONSTRAINTS),
将当前用户下的 table1、table2 的对象信息导出时不导出约束。
./dexp SYSDBA/SYSDBA FILE=/mnt/data/db_str.dmp LOG=db_str.log TABLES=table1,table2 EXCLUDE=/(CONSTRAINTS/)
2.3.2.7 INCLUDE
INCLUDE 用来批量设置导出时包含的对象种类。可选参数。
语法如下:
INCLUDE=(<对象种类名>{,<对象种类名>})
或
INCLUDE=TABLES:<表名>{,<表名>}
<对象种类名>:CONSTRAINTS、INDEXES、ROWS、TRIGGERS 或 GRANTS。
例 设置 INCLUDE=(CONSTRAINTS,INDEXES),指明将当前用户下的 table1 的对
象约束和索引信息导出。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log TABLES=table1 DIRECTORY=/mnt/data/dexp INCLUDE=/(CONSTRAINTS,INDEXES/)
2.3.2.8 CONSTRAINTS、TABLESPACE、GRANTS、INDEXES、TRIGGERS、ROWS
这些参数用来指定某类对象是否被导出。类别分别为约束、表空间、权限、索引、触发
器和数据。
语法如下:
CONSTRAINTS = Y/N
TABLESPACE = N/Y
GRANTS = Y/N
INDEXS = Y/N
TRIGGERS = Y/N
ROWS = Y/N
CONSTRAINTS:设置是否导出约束,可选参数。取值范围:Y/N。Y:导出约束,缺省值;N:不导出约束。
TABLESPACE:设置导出的对象定义中是否包含表空间,可选参数。取值范围:N/Y。N:不包含表空间,缺省值;Y:包含表空间。
GRANTS:设置是否导出权限,可选参数。取值范围:Y/N。Y:导出权限,缺省值;N:不导出权限。
INDEXES:设置是否导出索引,可选参数。取值范围:Y/N。Y:导出索引,缺省值;N:不导出索引。
TRIGGERS:设置是否导出触发器,可选参数。取值范围:Y/N。Y:导出触发器,缺省值;N:不导出触发器。
ROWS:设置是否导出数据,可选参数。取值范围:Y/N。Y:导出数据,缺省值;N:不导出数据。
例 设置 ROWS=N,不导出表中的数据。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp NOLOGFILE=Y FULL=Y DIRECTORY=/mnt/data/dexp ROWS=N
此处,对象(CONSTRAINTS、GRANTS、INDEXES、TRIGGERS、ROWS)分别单独设置,
和 EXCLUDE/INCLUDE 中批量设置功能一样。设置一个即可。
如果单独设置和批量设置同时出现时,那么以最后出现的那个为准。
2.3.2.9 NOLOGFILE
NOLOGFILE 用于设置是否使用日志文件。可选参数。
语法如下:
NOLOGFILE=Y/N
Y:不使用。
N:使用,缺省值。
一旦设置 NOLOGFILE=Y 不使用日志文件。此时即使存在 LOG 参数,LOG参数也为无效。
例 设置 NOLOGFILE=Y,不使用日志文件。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp NOLOGFILE=Y FULL=Y DIRECTORY=/mnt/data/dexp
2.3.2.10 NOLOG
NOLOG 设置屏幕上是否显示日志信息。可选参数。
语法如下:
NOLOG=Y/N
Y:不显示。
N:显示,缺省值。
例 设置 NOLOG=Y 屏幕不显示日志信息。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp NOLOG=Y FULL=Y DIRECTORY=/mnt/data/dexp
2.3.2.11 LOG_WRITE
LOG_WRITE 用于日志信息实时写入日志文件。可选参数。
语法如下:
LOG_WRITE=Y/N
Y:一边将日志内容打印到屏幕上,一边将日志内容写入日志文件。
N:日志内容先在屏幕上全部打印完毕再写入日志文件,缺省值。
2.3.2.12 DUMMY
DUMMY 用于设置交互信息处理。可选参数,缺省使用 P 打印交互信息。
在使用 dexpdp的时候,此参数无需设置,不提供交互信息,全部按 YES 处理。
语法如下:
DUMMY=P/Y/N
P:提供交互界面,缺省方式。当导出文件已存在的时候,提供是否覆盖交互界面。
Y:不提供交互界面,所有交互都按 YES 处理。
N:不提供交互界面,所有交互都按 NO 处理。
2.3.2.13 PARFILE
PARFILE 用于将常用的参数设置保存到文件中,
然后使用参数文件 PARFILE 进行导出、导入操作。可选参数。
语法如下:
PARFILE=<path>
<path>:PARFILE 文件的绝对路径。
例 设置 PARFILE=/mnt/data/dexp/para.txt。
./dexp USERID=SYSDBA/SYSDBA PARFILE=/mnt/data/dexp/para.txt
其中,参数文件/mnt/data/dexp/para.txt 的内容如下:
FILE=db_str.dmp
LOG=db_str.log
TABLES=table1
DIRECTORY=/mnt/data/dexp
2.3.2.14 FEEDBACK
FEEDBACK 用来指明在导出数据的过程中每间隔多少行打印一次进度信息。
可选参数。当参数缺省时,默认为 0,只打印导出表的总行数。
语法如下:
FEEDBACK=<num>
<num>:表间隔的行数。正整数。缺省为 0,只打印导出表的总行数。
例 将整个数据库导出到文件 dexp.dmp 中,并且在导出的过程中每隔 100 行打印一次
进度信息。
./dexp SYSDBA/SYSDBA FULL=Y FILE=dexp.dmp DIRECTORY=/mnt/data/dexp FEEDBACK=100
2.3.2.15 COMPRESS
COMPRESS 指定是否压缩导出文件。可选参数。缺省为不压缩。
语法如下:
COMPRESS=Y/N
Y:压缩。
N:不压缩,缺省值。
2.3.2.16 ENCRYPT、ENCRYPT_PASSWORD、ENCRYPT_NAME
这三个参数用来设置导出文件加密。可选参数。
语法如下:
ENCRYPT=Y
ENCRYPT_PASSWORD=<加密密钥>
ENCRYPT_NAME=<加密算法>
ENCRYPT=Y:设置导出文件加密。如果设置 ENCRYPT=Y,那么默认 COMPRESS=Y,先压缩后加密。
ENCRYPT_PASSWORD=<加密密钥>:设置加密密钥。
ENCRYPT_NAME=<加密算法>:设置加密算法。缺省为 RC4。
加密算法:
DES_ECB 、DES_CBC 、DES_CFB、DES_OFB、DESEDE_ECB、
DESEDE_CBC 、DESEDE_CFB、DESEDE_OFB 、AES128_ECB 、
AES128_CBC 、AES128_CFB 、AES128_OFB 、AES192_ECB 、
AES192_CBC 、AES192_CFB 、AES192_OFB 、AES256_ECB 、
AES256_CBC 、AES256_CFB 、AES256_OFB 、RC4
例 设置导出文件加密,密钥 abcdefg,加密算法为 DES_CBC。
./dexp SYSDBA/SYSDBA DIRECTORY=/mnt/data/dexp FILE=dk15.dmp LOG=db_str15.log ENCRYPT=Y ENCRYPT_PASSWORD=abcdefg ENCRYPT_NAME=DES_CBC FULL=Y
ENCRYPT、ENCRYPT_PASSWORD、ENCRYPT_NAME 经常一起使用。
如果只设置 ENCRYPT_PASSWORD 一个,那么默认 ENCRYPT=Y,
ENCRYPT_NAME 缺省值 RC4。
2.3.2.17 FILESIZE
FILESIZE 用于指定单个导出文件(FILE)大小或日志文件(LOG)大小的上限。可以
按字节[B]、K[B]、M[B]、G[B]的方式指定大小。可选参数。
使用 FILESIZE 参数时,FILE(或 LOG)必须使用%U 对名称进行自动扩展,否则报错。
如果不指定 FILE(或 LOG),那么即使设置了 FILESIZE 也不起作用。FILE 和 LOG 同时使
用%U 时,FILESIZE 参数只需指定一次。
语法如下:
FILESIZE=<num>
<num>:单个导出文件上限。整数类型,取值范围:128M~系统最大值。
例 以 FULL 方式导出实例,每个导出文件大小为 128m,文件名以 data01.dmp 自动
扩展,存储位置为/mnt/data/dexp 目录。
./dexp USERID=SYSDBA/SYSDBA DIRECTORY=/mnt/data/dexp FILE=data%u.dmp LOG=data%u.log FILESIZE=128m FULL=Y
dexp 执行过程中可能遇到单个文件过大的问题。
解决办法是通过 FILESIZE参数来设置单个导出文件上限,
导出文件名称按照 FILE 参数中描述的使用%u来自动扩展。
这样在按照 FILESIZE 大小导出到第一个文件之后,会自动生成下一个导出文件。
2.3.2.18 FILENUM
FILENUM 用于指定一个模板导出文件的个数。取值范围为 1~99,缺省为 99。
可选参数。FILENUM 需要和 FILESIZE 搭配使用,
FILENUM*FILESIZE 要大于等于导出的文件总大小,否则会报错空间不足。

2.3.2.19 DROP
DROP 用于设置导出后是否删除原表。可选参数。
语法如下:
DROP=Y/N
Y:导出后删除原表,但不级联删除。
N:导出后不删除原表,缺省值。
2.3.2.20 DESCRIBE
DESCRIBE 用于设置导出数据文件的描述信息,记录在数据文件中。可选参数。
语法如下:
DESCRIBE=’字符串’
字符串:设置导出数据文件的描述信息,记录在数据文件中。
缺省时,导出的数据文件中没有描述信息。

2.3.2.21 COL_DEFAULT_SEPARATE
COL_DEFAULT_SEPARATE 用于设置是否单独导出列默认值。可选参数。
语法如下:
COL_DEFAULT_SEPARATE=Y/N
Y:单独导出列默认值,缺省值。
N:列默认值和表定义一起导出。
2.3.2.22 WITH_UR
WITH_UR 用于设置导出数据是否允许脏读。可选参数。
语法如下:
WITH_UR=N/Y
N:导出表数据不允许脏读,缺省值。
Y:导出表数据允许脏读。

2.3.2.23 SIMPLE_LOG
SIMPLE_LOG 用于设置导出日志是否只打印简要日志,
简要日志只打印导出对象个数和导出表数据行数。可选参数。
语法如下:
SIMPLE_LOG=N/Y
N:导出日志不使用简要日志,缺省值。
Y:导出日志使用简要日志。
2.3.2.24 HELP
输入 dexp HELP 即可查看帮助信息。
语法如下:
HELP
例 使用 HELP 查看帮助信息。
./dexp HELP
HELP 信息会显示 dexp 版本信息以及所有参数的大致信息,供用户快速参考。

4 DM8: dimp逻辑导入更多参数介绍

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.1 dimp 参数详解

3.3.2 普通参数
3.3.2.1 PARALLEL
PARALLEL 用于指定导入的过程中所使用的线程数目。
可选参数,缺省为单线程。如果CPU 核数为 N 的话,
那一般来说 PARALLEL 为 N 或者 N+1 最合适。
语法如下:
PARALLEL=<num>
<num>:线程数。整数类型,取值范围:1~100,缺省为1。
例 设置 PARALLELl=2 时,则线程数为 2。
./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp LOG=db_str.log FULL=Y DIRECTORY=/mnt/data/dimp PARALLEL=2
3.3.2.2 TABLE_PARALLEL
TABLE_PARALLEL 在 FAST_LOAD 为 Y 时有效,
用于指定导入每张表所使用的线程数。
可选参数,缺省为单线程。如果 CPU 核数为 N 的话,
那一般来说 TABLE_PARALLEL 为 N 或者 N+1 最合适。
在 MPP 模式下会转换成单线程。
语法如下:
TABLE_PARALLEL=<num>
<num>:线程数。整数类型,取值范围 1~16,缺省为 1。
例 设置 TABLE_PARALLEL=3 时则线程数为 3。
./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp LOG=db_str.log FULL=Y DIRECTORY=/mnt/data/dimp TABLE_PARALLEL=3
3.3.2.3 IGNORE
IGNORE 指定忽略创建数据库对象(表、类、java 类、domain、sequence、comment、
view、synonym、trigger、package、dblink、user、存储过程/函数、role 对象创
建、权限授权语句、索引、约束等)错误。可选参数。缺省为 N,不忽略。
语法如下:
IGNORE=Y/N
Y:忽略导入时所产生的创建数据库对象错误并继续执行。
N:不忽略导入时所产生的创建数据库对象错误,遇到错误即停止执行并报错,缺省值。
3.3.2.4 TABLE_EXISTS_ACTION
TABLE_EXISTS_ACTION 用于要导入的表已经存在时的处理方式。默认为直接报错。
语法如下:
TABLE_EXISTS_ACTION=[SKIP | APPEND | TRUNCATE | REPLACE]
SKIP:跳过此表。
APPEND:直接向现有表中导入数据。
TRUNCATE:先删除现有表中的数据,再向表中导入数据。
REPLACE:先删除现有表,再导数据。
3.3.2.5 FAST_LOAD
FAST_LOAD 用于设置是否使用 dmfldr 进行数据导入,缺省为 N。
语法如下:
FAST_LOAD=Y/N
Y:是。
N:否,缺省值。
当 FAST_LOAD=Y 时 才 可 以 设 置 TABLE_PARALLEL 参 数 , 
否则TABLE_PARALLEL 参数无效。

3.3.2.6 FLDR_ORDER
FLDR_ORDER 用于设置使用 dmfldr 时,是否严格按导出顺序来导入数据。可选参数。
语法如下:
FLDR_ORDER=Y/N
Y:表示按照导出顺序来导入数据,缺省值。
N:表示不按照导出顺序来导入,数据的创建为随机生成。
3.3.2.7 COMMIT_ROWS
COMMIT_ROWS 用于设置批量提交的行数,缺省为 5000 行。用户可以根据实际情况调
整每次提交的行数,以达到性能的最佳点。一般情况下可不设置。可选参数。
语法如下:
COMMIT_ROWS=<num>
<num>:行数。取值范围:1~1000000,缺省为 5000。

3.3.2.8 EXCLUDE
EXCLUDE 用来批量设置导入时忽略的对象种类。可选参数。
语法如下:
EXCLUDE=(<对象种类名>{,<对象种类名>})
<对象种类名>:包括 CONSTRAINTS、INDEXES、ROWS、TRIGGERS、GRANTS。
例 设置 EXCLUDE=(CONSTRAINTS),将当前用户下的 table1、table2 的对象信息导入时不导入约束。
./dimp SYSDBA/SYSDBA FILE=/mnt/data/db_str.dmp LOG=db_str.log TABLES=table1,table2 EXCLUDE=/(CONSTRAINTS/)DIRECTORY=/mnt/data/dimp
3.3.2.9 GRANTS、CONSTRAINTS、INDEXES、TRIGGERS、ROWS
这些参数用来指定某类对象是否被导入。类别分别为约束、权限、索引、触发器和数据。
语法如下:
GRANTS=Y/N
CONSTRAINTS=Y/N
INDEXS=Y/N
TRIGGERS=Y/N
ROWS=Y/N
GRANTS:设置是否导入权限,可选参数。取值范围:Y/N。Y:导入权限,缺省值;N:不导入权限。
CONSTRAINTS:设置是否导入约束,可选参数。取值范围:Y/N。Y:导入约束,缺省值;N:不导入约束。
INDEXES:设置是否导入索引,可选参数。取值范围:Y/N。Y:导入索引,缺省值;N:不导入索引。
TRIGGERS:设置是否导入触发器,可选参数。取值范围:Y/N。Y:导入触发器,缺省值;N:不导入触发器。
ROWS:设置是否导入数据,可选参数。取值范围:Y/N。Y:导入数据,缺省值;N:不导入数据。
例 设置 ROWS=N 不导入表中的数据。
./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp NOLOGFILE=Y FULL=Y DIRECTORY=/mnt/data/dimp ROWS=N
3.3.2.10 NOLOGFILE
NOLOGFILE 用于设置是否使用日志文件。可选参数。
语法如下:
NOLOGFILE=Y/N
Y:不使用日志文件。此时即使存在 LOG 参数,LOG 参数也为无效。
N:使用日志文件,缺省值。
例 设置 NOLOGFILE=Y,不使用日志文件。
./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp NOLOGFILE=Y FULL=Y 
3.3.2.11 NOLOG
NOLOG 设置屏幕上是否显示日志信息。可选参数。缺省为 N,显示日志信息。
语法如下:
NOLOG=Y/N
Y:不显示。
N:显示,缺省值。
例 设置 NOLOG=Y 屏幕不显示日志信息。
./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp LOG=db_str.log NOLOG=Y FULL=Y DIRECTORY=/mnt/data/dimp
3.3.2.12 LOG_WRITE
LOG_WRITE 用于日志信息实时写入日志文件。可选参数。
语法如下:
LOG_WRITE=Y/N
Y:一边将日志内容打印到屏幕上,一边将日志内容写入日志文件。
N:日志内容先在屏幕上全部打印完毕再写入日志文件,缺省值。
3.3.2.13 DUMMY
DUMMY 用于设置交互信息处理。可选参数,缺省使用 P 打印交互信息。
语法如下:
DUMMY=P/Y/N
P:打印交互信息,默认方式。
Y:不打印交互信息,所有交互都按 YES 处理。
N:不打印交互信息,所有交互都按 NO 处理。
3.3.2.14 PARFILE
PARFILE 用于将常用的参数设置保存到文件中,
然后使用参数文件 PARFILE 进行导出、导入操作。可选参数。
语法如下:
PARFILE=<path>
<path>:PARFILE 文件的绝对路径。
例 在 dimp 中使用 PARFILE,设置路径 PARFILE=/mnt/data/dimp/para.txt。
./dimp USERID=SYSDBA/SYSDBA PARFILE=/mnt/data/dimp/para.txt
其中,参数文件/mnt/data/dimp/para.txt 的内容如下:
FILE=/mnt/data/dexp/db_str.dmp
LOG=db_str.log
TABLES=table1
DIRECTORY=/mnt/data/dimp
3.3.2.15 FEEDBACK
FEEDBACK 用来指明在导入数据的过程中每间隔多少行打印一次进度信息。可选参数。
当参数缺省时,默认值为 0,只打印导入表的总行数。
语法如下:
FEEDBACK=<num>
<num>:表间隔的行数。正整数。缺省为 0,只打印导入表的总行数。
例 将文件 dexp.dmp 中的对象和数据导入到数据库时,
要求在导出的过程中每隔 100行打印一次进度信息。
./dimp SYSDBA/SYSDBA FULL=Y FILE=/mnt/data/dexp/dexp.dmp LOG=db_str.log DIRECTORY=/mnt/data/dimp FEEDBACK=100
3.3.2.16 COMPILE
如果导入时包含过程/函数、视图、物化视图、触发器、类和包,
那么导入时会执行一个编译语句(alter ...compile)。
COMPILE 用于设置是否在导入时对过程或函数执行编译。
编译相当于执行重建操作,用于检查过程或函数是否还有效。
编译成功,说明对象是有效的;编译失败,说明对象不存在或发生改变,导致重建操作失败。
编译失败,导入停止。不编译就不检查有效性,直接导入。
语法如下:
COMPILE=N/Y
 Y:执行,缺省值。
 N:不执行。
例 导入的过程中含有函数 FUN_01,那么导入时会自动执行如下语句:
alter function "SYSDBA"."FUN_01" compile;
如果不想编译,需要设置 COMPILE=N。
3.3.2.17 INDEXFILE
用于将表的索引/约束创建信息写入指定的文件。
语法如下:
INDEXFILE=<文件>
例 设置 INDEXFILE=/mnt/data/dimp/dimp.log。
./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp LOG=db_str.log FULL=Y INDEXFILE=/mnt/data/dimp/dimp.log
3.3.2.18 INDEXFIRST
INDEXFIRST 用于设置导入时是否先建索引。可选参数。
创 建 索 引 的 过 程 是 先 遍 历 数 据 再 创 建 索 引 树 。 数 据 量 比 较 大 时 , 应 该 选 择
INDEXFIRST=Y,先创建索引再导入数据,这样就避免创建索引之前遍历大量数据而耗费时
间;数据量小时,可任意选择。
语法如下:
INDEXFIRST=Y/N
Y:是。
N:否,缺省值。
3.3.2.19 REMAP_SCHEMA
将源模式中的数据导入到目标模式中。可选参数。
语法如下:
<SOURCE_SCHEMA>:<TARGET_SCHEMA>
<SOURCE_SCHEMA>:源模式。如果指定的源模式不存在,则导入到对象原来所在的模式。
<TARGET_SCHEMA>:目标模式。如果目标模式不存在,先创建目标模式,再继续导入。
例 将 SYSDBA 模式中的数据导入到 PRERSON 模式中。
./dimp SYSDBA/SYSDBA FILE=/mnt/data/dexp/imp_exp.dmp DIRECTORY=/mnt/data/dimp FULL=Y REMAP_SCHEMA=SYSDBA:PERSON
3.3.2.20 ENCRYPT_PASSWORD、ENCRYPT_NAME
如果数据文件是通过加密后得到的,在数据文件导入到数据库时,
需要提供加密密钥和加密算法。同时,在 1 个小时内密码只有 10 次错误机会。
语法如下:
ENCRYPT_PASSWORD=<加密密钥>
ENCRYPT_NAME=<加密算法>
<加密密钥>:与导出文件的加密密钥相同。
<加密算法>:与导出文件的加密算法相同。导出加密算法缺省的情况下,此处加密密码可不写。
例 将 2.3.3.15 中导出的数据再导入进来。
./dimp SYSDBA/SYSDBA FILE=/mnt/data/dexp/dk15.dmp LOG=db_str19.log FULL=Y DIRECTORY=/mnt/data/dimp ENCRYPT_PASSWORD=abcdefg ENCRYPT_NAME=DES_CBC
3.3.2.21 SHOW/DESCRIBE
SHOW/DESCRIBE 用于设置是否打印 dexp 导出的数据文件的内容列表。可选参数。
语法如下:
SHOW=Y/N 
或
DESCRIBE=Y/N
Y:是。
N:否,缺省值。
例 想查看/mnt/data/dexp/中 db_str.dmp 文件的内容列表。
./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp SHOW=Y
打印结果如下:
--------------------------------导出文件列表信息--------------------------------
共包含 1 个文件,文件如下:
./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp SHOW=Y
----------------------------------------------------------------------------
- 导出文件为 FULL 方式导出,共包含以下 7 个模式
模式 PERSON 含有 4 个表,分别为:
ADDRESS ADDRESS_TYPE PERSON PERSON_TYPE
模式 PRODUCTION 含有 7 个表,分别为:
PRODUCT_CATEGORY PRODUCT_SUBCATEGORY PRODUCT LOCATION PRODUCT_INVENTORY PRODUCT_REVIEW PRODUCT_VENDOR
模式 PURCHASING 含有 5 个表,分别为:
VENDOR VENDOR_ADDRESS VENDOR_PERSON PURCHASEORDER_HEADER PURCHASEORDER_DETAIL
模式 RESOURCES 含有 4 个表,分别为:
DEPARTMENT EMPLOYEE EMPLOYEE_ADDRESS EMPLOYEE_DEPARTMENT
模式 SALES 含有 5 个表,分别为:
CUSTOMER CUSTOMER_ADDRESS SALESPERSON SALESORDER_HEADER SALESORDER_DETAIL
模式 SYSDBA 含有 1 个表,分别为:
TAB1
模式 OTHER 含有 10 个表,分别为:
DEPARTMENT EMPSALARY ACCOUNT ACTIONS READER READERAUDIT DEPTTAB EMPTAB SALGRADE COMPANYHOLIDAYS
3.3.2.22 TASK_THREAD_NUMBER
TASK_THEAD_NUMBER 用于设置 dmfldr 处理用户数据的线程数目。
可选参数,缺省值为 CPU 个数。但当 CPU 个数大于 8 时,
默认值都被置为 8。
语法如下:
TASK_THEAD_NUMBER=<num>
<num>:线程数。取值范围:1~128,缺省为CPU个数(8及8以内)。
3.3.2.23 BUFFER_NODE_SIZE
BUFFER_NODE_SIZE 用于设置 dmfldr 指定读取文件缓冲区页大小。可选参数,缺省为 10。
值越大,缓冲区的页数越多,每次可以读取的数据就越多,每次发送到服务器的数据也
就越多,效率越高。但其大小受dmfldr客户端内存大小限制。
语法如下:
BUFFER_NODE_SIZE=<size_num>
<size_num>:缓冲区页数。整数类型,取值范围:1~2048,缺省为 10。单位为 M。
3.3.2.24 TASK_SEND_NODE_NUMBER
TASK_SEND_NODE_NUMBER 用于设置 dmfldr 发送节点个数。可选参数。
语法如下:
TASK_SEND_NODE_NUMBER=<num>
<num>:节点个数。整数类型,取值范围:16~65535。在系统内存够的情况下可以适
当的设大数值以提升效率。缺省情况下,由程序自动计算。

3.3.2.25 LOB_NOT_FAST_LOAD
LOB_NOT_FAST_LOAD 用于设置当表中含有大字段时不使用 dmfldr,
而使用普通的INSERT 进行插入,根据 COMMIT_ROWS 参数决定提交的行数。
因为当表中有大字段的时候,dmfldr 是一行一行提交表数据。
语法如下:
LOB_NOT_FAST_LOAD=Y
3.3.2.26 PRIMARY_CONFLICT
PPIMARY_CONFLICT 用于设置主键冲突的处理方式。可选参数,不设置此参数时主键
冲突报错,设置时不报错,可指定对主键冲突的数据进行不同的处理。
语法如下:
PRIMARY_CONFLICT=[IGNORE|OVERWRITE|OVERWRITE2]
IGNORE:不覆盖主键冲突行数据。
OVERWRITE:覆盖主键冲突行数据,删除原表有冲突的行。
OVERWRITE2:覆盖主键冲突行数据,更新原表有冲突的行。

3.3.2.27 TABLE_FIRST
TABLE_FIRST 用于控制是否强制先导入表对象。可选参数,缺省为 N。
语法如下:
TABLE_FIRST=Y/N
N:正常导入,缺省值。顺序为:
1.没有依赖的对象(除了表之外的数据库对象);
2.有依赖的 class;
3.表;
4.依赖对象。
Y:强制先导入表。顺序为:
1.表;
2.没有依赖的对象(除了表之外的数据库对象);
3.有依赖的 class;
4.依赖对象。
3.3.2.28 SHOW_SERVER_INFO
SHOW_SERVER_INFO 用于控制是否显示服务器信息。可选参数,缺省为 N。
语法如下:
SHOW_SERVER_INFO=Y/N
N:不显示导出文件对应服务器信息,正常导入,缺省值。
Y:显示导出文件对应服务器信息,实际不导入。

3.3.2.29 IGNORE_INIT_PARA
IGNORE_INIT_PARA 用于指定源库和目标库之间忽略差异的建库参数。
取值范围:0、1、2 和 3。缺省为 0。
0:不忽略;
1:忽略 CASE_SENSITIVE 参数差异;
2:忽略 LENGTH_IN_CHAR 参数差异;
3:忽略 CASE_SENSITIVE、LENGTH_IN_CHAR 参数差异,可选参数。
语法如下:
IGNORE_INIT_PARA=<num>
<num>:需要忽略的建库参数代号。取值范围:0、1、2 和 3,缺省为 0。
3.3.2.30 AUTO_FREE_KEY
如果数据文件是通过工作模式为 WORK_MODE_KID 的加密算法加密后得到的,
则可通过AUTO_FREE_KEY 指定在数据导入完成后是否释放加密文件使用的密钥,
密钥释放后该数据文件将无法使用。
语法如下:
AUTO_FREE_KEY=Y/N
Y:是。
N:否,缺省值。

3.3.2.31 REMAP_TABLE
将源表中的数据导入到目的表中。可选参数。
语法如下:
[<SOURCE_SCHEMA>].<SOURCE_TABLE>:<TARGET_TABLE>
<SOURCE_SCHEMA>:源表的模式。如果缺省则代表所有模式下的<SOURCE_TABLE>
都是源表。目的表存在则报错。
<SOURCE_TABLE>:源表。
<TARGET_TABLE>:目的表。
例 将源表 T1 中的数据导入到目的表 T2 中。
./dimp SYSDBA/SYSDBA FILE=/mnt/data/dexp/imp_exp.dmp DIRECTORY=/mnt/data/dimp FULL=Y REMAP_TABLE=T1:T2
3.3.2.32 REMAP_TABLESPACE
将源表空间中的数据导入到目的表空间中。使用该参数的前提是导出文件中包含源表表
空间。可选参数。
语法如下:
<SOURCE_TABLESPACE>:<TARGET_TABLESPACE>
<SOURCE_TABLESPACE>:源表空间。<TARGET_TABLESPACE>:目的表空间。
例 将 MAIN 表空间中的数据导入到 TS 表空间。
./dimp SYSDBA/SYSDBA FILE=/mnt/data/dexp/imp_exp.dmp DIRECTORY=/mnt/data/dimp FULL=Y REMAP_TABLESPACE=MAIN:TS
3.3.2.33 SIMPLE_LOG
SIMPLE_LOG 用于设置导入日志是否只打印简要日志,简要日志只打印导入对象个数和导
入表数据行数。可选参数。
语法如下:
SIMPLE_LOG=N/Y
N:导入日志不使用简要日志,缺省值。
Y:导入日志使用简要日志。
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值