引言
oracle自己带了很多的工具可以用来进行数据的迁移、备份和恢复等工作。但是每个工具都有自己的特点。
exp、imp:可以对数据库中的数据进行导入和导出,是一种很好的数据库备份和恢复的工具,因此主要用在数据库的热备份和恢复方面,速度快,使用简单,快捷。缺点:在不同版本的数据库之间的导入和导出,总会出现这样那样的问题, 并且只适合oracle使用。
sqlldr:可以把一些以文件格式存放的数据顺利导入到oracle数据库中,是一种在不同数据库之间进行数据迁移的非常方便且通用的工具。但其速度慢,另外对blob等类型的数据有点麻烦。
下面介绍下sqlldr的使用。
一、sqlldr的结构
sqlldr主要由sqlldr本身命令参数、装载控制文件、装载bad文件、装载log文件、装载数据文件、discard文件组成。对数据装载有以下4种方式 :
APPEND 原先的表有数据 就加在后面
INSERT 装载空表 如果原先的表有数据 sqlloader会停止 默认值
REPLACE 原先的表有数据 原先的数据会全部删除
TRUNCATE 指定的内容和replace的相同 会用truncate语句删除现存数据
其结构图为:
二、sqlldr的