Oracle数据库导入\导出使用说明本文包含exp/imp,expdp/impdp的使用说明和常用参数详解另外包括一个有趣的测试一、Oracle数据库EXP\IMP\EXPDP\IMPDP使用说明1.Exp数据导出1.1.exp关键字说明关键字说明(默认值)------------------------------USERID用户名/口令BUFFER数据缓冲区大小FILE输出文件(EXPDAT.DMP)COMPRESS导入到一个区(Y)GRANTS导出权限(Y)INDEXES导出索引(Y)DIRECT直接路径(N)--直接导出速度较快LOG屏幕输出的日志文件ROWS导出数据行(Y)CONSISTENT交叉表的一致性(N)FULL导出整个文件(N)OWNER所有者用户名列表TABLES表名列表RECORDLENGTHIO记录的长度INCTYPE增量导出类型RECORD跟踪增量导出(Y)TRIGGERS导出触发器(Y)STATISTICS分析对象(ESTIMATE)PARFILE参数文件名CONSTRAINTS导出的约束条件(Y)OBJECT_CONSISTENT只在对象导出期间设置为只读的事务处理(N)FEEDBACK每x行显示进度(0)FILESIZE每个转储文件的最大大小FLASHBACK_SCN用于将会话快照设置回以前状态的SCNFLASHBACK_TIME用于获取最接近指定时间的SCN的时间QUERY用于导出表的子集的select子句RESUMABLE遇到与空格相关的错误时挂起(N)RESUMABLE_NAME用于标识可恢复语句的文本字符串RESUMABLE_TIMEOUTRESUMABLE的等待时间TTS_FULL_CHECK对TTS执行完整或部分相关性检查TABLESPACES要导出的表空间列表Oracle数据库导入\导出使用说明TRANSPORT_TABLESPACE导出可传输的表空间元数据(N)TEMPLATE调用iAS模式导出的模板名1.2.常用的exp关键字举例1、full用于导出整个数据库,在rows=n一起使用,导出整个数据库的结构。如:expuserid=gwm/gwmfile=/test.dmplog=test.logfull=yrows=ndirect=y2、OWNER和TABLES,用于定义exp导出的对象如:expuserid=gwm/gwmfile=/test.dmplog=test.logowner=gwmtable=(table1,table2)3、buffer和feedback若导出数据较大,考虑使用这两个参数。如:expuserid=gwm/gwmfile=/test.dmplog=test.logfeedback=10000buffer=100000000tables=(table1,table2)4、file和log用于指定备份的dmp名称和log名称5、compress不压缩导出数据的内容,默认y6、filesize若导出的数据文件大,应该用该参数,限制文件大小不要超过2g如:expuserid=gwm/gwmfile=/test1,test2,test3,test4,test5filesize=2Glog=test.log这样将创建test1.dmp,test2.dmp等,每个文件大小为2g。1.3.exp导出实例--数据库全备--expsystem/manger@linkfile=E:\file_name.dmpfull=ydirect=ylog=E:\log_name.log--可选择的备份数据库一些用户--expsystem/manger@linkfile=E:\file_name.dmpowner=(username1,username2)direct=ylog=E:\log_name.log--备份一个用户的数据--expusername/password@linkfile=E:\file_name.dmpdirect=ylog=E:\log_name.log2.Imp数据导入imp关键字说明关键字说明(默认值)关键字说明(默认值)-------------------------------------------------------------USERID用户名/口令FULL导入整个文件(N)BUFFER数据缓冲区大小FROMUSER所有者用户名列表FILE输入文件(EXPDAT.DMP)TOUSER用户名列表SHOW只列出文件内容(N)TABLES表名列表IGNORE忽略创建错误(N)RECORDLENGTHIO记录的长度GRANTS导入权限(Y)INCTYPE增量导入类型INDEXES导入索引(Y)COMMIT提交数组插入(N)Oracle数据库导入\导出使用说明ROWS导入数据行(Y)PARFILE参数文件名LOG屏幕输出的日志文件CONSTRAINTS导入限制(Y)DESTROY覆盖表空间数据文件(N)INDEXFILE将表/索引信息写入指定的文件SKIP_UNUSABLE_INDEXES跳过不可用索引的维护(N)FEEDBACK每x行显示进度(0)TOID_NOVALIDATE跳过指定类型ID的验证FILESIZE每个转储文件的最大大小STATISTICS始终导入预计算的统计信息RESUMABLE在遇到有关空间的错误时挂起(N)RESUMABLE_NAME用来标识可恢复语句的文本字符串RESUMABLE_TIMEOUTRESUMABLE的等待时间COMPILE编译过程,程序包和函数(Y)STREAMS_CONFIGURATION导入流的一般元数据(Y)STREAMS_INSTANTIATION导入流实例化元数据(N)下列关键字仅用于可传输的表空间TRANSPORT_TABLESPACE导入可传输的表空间元数据(N)TABLESPACES将要传输到数据库的表空间DATAFILES将要传输到数据库的数据文件TTS_OWNERS拥有可传输表空间集中数据的用户3.Expdp数据泵导出3.1.EXPDP命令行选项1.ATTACH该选项用于在客户会话与已存在导出作用之间建立关联.语法如下ATTACH=[schema_name.]job_nameSchema_name用于指定方案名,job_name用于指定导出作业名.注意,如果使用ATTACH选项,在命令行除了连接字符串和ATTACH选项外,不能指定任何其他选项,示例如下:Expdpscott/tigerATTACH=scott.export_job2.CONTENT该选项用于指定要导出的内容.默认值为ALLCONTENT={ALL|DATA_ONLY|METADATA_ONLY}当设置CONTENT为ALL时,将导出对象定义及其所有数据.为DATA_ONLY时,只导出对象数据,为METADATA_ONLY时,只导出对象定义Expdpscott/tigerDIRECTORY=dumpDUMPFILE=a.dumpCONTENT=METADATA_ONLY3.DIRECTORY指定转储文件和日志文件所在的目录Oracle数据库导入\导出使用说明DIRECTORY=directory_objectDirectory_object用于指定目录对象名称.需要注意,目录对象是使用CREATEDIRECTORY语句建立的对象,而不是OS目录Expdpscott/tigerDIRECTORY=dumpDUMPFILE=a.dump4.DUMPFILE用于指定转储文件的名称,默认名称为expdat.dmpDUMPFILE=[directory_object:]file_name[,….]Directory_object用于指定目录对象名,file_name用于指定转储文件名.需要注意,如果不指定directory_object,导出工具会自动使用DIRECTORY选项指定的目录对象Expdpscott/tigerDIRECTORY=dump1DUMPFILE=dump2:a.dmp5.ESTIMATE指定估算被导出表所占用磁盘空间分方法.默认值是BLOCKSESTIMATE={BLOCKS|STATISTICS}设置为BLOCKS时,oracle会按照目标对象所占用的数据块个数乘以数据块尺寸估算对象占用的空间,设置为STATISTICS时,根据最近统计值估算对象占用空间Expdpscott/tigerTABLES=empESTIMATE=STATISTICSDIRECTORY=dumpDUMPFILE=a.dump6.ESTIMATE_ONLY指定是否只估算导出作业所占用的磁盘空间,默认值为NEXTIMATE_ONLY={Y|N}设置为Y时,导出作用只估算对象所占用的磁盘空间,而不会执行导出作业,为N时,不仅估算对象所占用的磁盘空间,还会执行导出操作.Expdpscott/tigerESTIMATE_ONLY=yNOLOGFILE=y7.EXCLUDE(具体见2、Exclude导出用户中指定类型的指定对象)该选项用于指定执行操作时释放要排除对象类型或相关对象EXCLUDE=object_type[:name_clause][,….]Object_type用于指定要排除的对象类型,name_clause用于指定要排除的具体对象.EXCLUDE和INCLUDE不能同时使用Expdpscott/tigerDIRECTORY=dumpDUMPFILE=a.dupEXCLUDE=VIEW8.FILESIZE指定导出文件的最大尺寸,默认为0,(表示文件尺寸没有限制)9.FLASHBACK_SCN指定导出特定SCN时刻的表数据FLASHBACK_SCN=scn_valueScn_value用于标识SCN值.FLASHBACK_SCN和FLASHBACK_TIME不能同时使用Expdpscott/tigerDIRECTORY=dumpDUMPFILE=a.dmpFLASHBACK_SCN=35852310.FLASHBACK_TIME指定导出特定时间点的表数据Oracle数据库导入\导出使用说明FLASHBACK_TIME=”TO_TIMESTAMP(time_value)”Expdpscott/tigerDIRECTORY=dumpDUMPFILE=a.dmpFLASHBACK_TIME=“TO_TIMESTAMP(’25-08-200414:35:00’,’DD-MM-YYYYHH24:MI:SS’)”11.FULL指定数据库模式导出,默认为NFULL={Y|N}为Y时,标识执行数据库导出.12.HELP指定是否显示EXPDP命令行选项的帮助信息,默认为N当设置为Y时,会显示导出选项的帮助信息.Expdphelp=y13.INCLUDE(具体见1、Include导出用户中指定类型的指定对象)指定导出时要包含的对象类型及相关对象INCLUDE=object_type[:name_clause][,…]14.JOB_NAME指定要导出作用的名称,默认为SYS_XXXJOB_NAME=jobname_stringSELECT*FROMDBA_DATAPUMP_JOBS;--查看存在的job15.LOGFILE指定导出日志文件文件的名称,默认名称为export.logLOGFILE=[directory_object:]file_nameDirectory_object用于指定目录对象名称,file_name用于指定导出日志文件名.如果不指定directory_object.导出作用会自动使用DIRECTORY的相应选项值.Expdpscott/tigerDIRECTORY=dumpDUMPFILE=a.dmplogfile=a.log16.NETWORK_LINK指定数据库链名,如果要将远程数据库对象导出到本地例程的转储文件中,必须设置该选项.如:expdpgwm/gwmdirectory=dir_dpNETWORK_LINK