Oracle数据泵导出和导入_第1页
Oracle数据泵导出和导入_第2页
Oracle数据泵导出和导入_第3页
Oracle数据泵导出和导入_第4页
Oracle数据泵导出和导入_第5页
免费预览已结束,剩余2页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Oracle10g数据导入导出简介Oracle10g 引入了 DATAPUMP 提供的是一种基于服务器的数据提取和恢复的实用程序,DATAPUMP 在体系结构和功能上与传统的 EXPORT 和IMPORT 实用程序相比有了显著的提升。DATAPUMP 允许您停止和重启作业,查看运行的作业的状态,及对导入和导出的数据做限制。注意:数据泵文件与传统的 EXP/IMP数据转储文件是不兼容的。以下是 DATAPUMP 的几个优点介绍:1.数据泵(DataPump)的所有工作都有数据库实例来完成,数据库可以并行来处理这些工作,不仅可以通过建立多个数据泵工作进程来读/写正在被导出/导入的数据,也可以建立并

2、行 I/O 服务器以更快地读取或插入数据,从而,单进程瓶颈被彻底解决。2.通过数据泵,以前通过 EXP/IMP 主要基于 Client/Server 的逻辑备份方式转换为服务器端的快速备份, 数据泵主要工作在服务器端, 可以通过并行方式快速装入或卸载数据,而且可以在运行过程中调整并行的程度,以加快或减少资源消耗。3.数据泵通过新的 API 来建立和管理,这些新的工作主要由 DBMS_DATAPUMP 来完成。新的导入/导出工具完全成为了一个客户端应用,通过 IMPDP/EXPDP 执行的命令实际上都是在调用 Server 端的 API 在执行操作,所以一旦一个任务被调度或执行,客户端就可以退出

3、连接,任务会在 server 端继续执行,随后通过客户端实用程序从任何地方检查任务的状态和进行修改创建DIRECTORYDATAPUMP 要求为将要创建和读取的数据文件及日志文件创建目录, 这个参数是用来定义一个目录,前面已经提到数据泵主要在 Server 端工作,导出文件需要写出到 Server 端本地目录,这个 DIRECTORY 就是对应的 Server 端的目录。将要访问数据泵文件的用户必须要拥有该目录的读/写权限。注意:在开始操作之前要验证外部目录是否存在,并且下达 createdirectory命令的用户需要拥有 createanydirectory 的系统权限。下面给出一个创建名

4、为 TEST_EXPDP 的目录并授予 hs_user,hs_his 用户访问此目录读/写权限。SQLCreatedirectoryTEST_EXPDPas/u03/expdpdump;SQLGrantread,writeondirectoryTESTEXPDPtohsuser,hshis;查看数据库中已创建的 directory 的两个视图:SELECT*FROMALL_DIRECTORIES;SELECT*FROMdbaDIRECTORIES;数据泵导由oracleLinuxRedHatu03$expdpsystem/mingyueHS2008schemas=hs_his,hs_futur

5、esdumpfile=expdp_test.dmplogfile=expdp_test.logdirectory=TEST_EXPDP;Export:Release.0-Productionon 星期三,1011 月,20100:16:04Copyright(c)2003,2005,Oracle.Allrightsreserved.Connectedto:OracleDatabase10gEnterpriseEditionRelease.0-ProductionWiththePartitioning,OracleLabelSecurity,OLAPandData

6、MiningScoringEngineoptionsStartingSYSTEM.SYS_EXPORT_SCHEMA_01:system/*HS2008schemas=hs_his,hs_futuresdumpfile=expdp_test.dmplogfile=expdp_test.logdirectory=TEST_EXPDPEstimateinprogressusingBLOCKSmethod.ProcessingobjecttypeSCHEMA_EXPORT/TABLE/TABLE_DATATotalestimationusingBLOCKSmethod:1.714GBProcessi

7、ngobjecttypeSCHEMA_EXPORT/USERProcessingobjecttypeSCHEMA_EXPORT/SYSTEM_GRANTProcessingobjecttypeSCHEMA_EXPORT/ROLE_GRANTProcessingobjecttypeSCHEMA_EXPORT/DEFAULT_ROLEProcessingobjecttypeSCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMAProcessingobjecttypeSCHEMA_EXPORT/TABLE/TABLEProcessingobjecttypeSCHEMA_EXP

8、ORT/TABLE/INDEX/INDEXProcessingobjecttypeSCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS如上面的清单所显示的只是罗列出来即将导出来的所有数据库对象,在导出过程中, DATADUMP 仓 I 建并使用了一个名为 SYS_EXPORT_SCHEMA_01 的对象, 此对象就是 DATADUMP 导出过程中所用的 JOB 名字, 如果在无行这个命令时如果没有指定导出的JOB名字那么就会产生一个默认的JOB名字, 如果在导出过程中指定JOB名字就为以指定名字出现,如下:oracleLinuxRedHat

9、u03$expdpsystem/mingyueHS2008schemas=hs_hisdumpfile=expdp_test.dmplogfile=expdp_test.logdirectory=TEST_EXPDPjob_name=hs_hisjob;Export:Release.0-Productionon 星期三,1011 月,20100:36:56Copyright(c)2003,2005,Oracle.Allrightsreserved.Connectedto:OracleDatabase10gEnterpriseEditionRelease.0-Pr

10、oductionWiththePartitioning,OracleLabelSecurity,OLAPandDataMiningScoringEngineoptionsStartingSYSTEM.HS_HISJOB:system/*HS2008schemas=hs_hisdumpfileEstimateinprogressusingBLOCKSmethod.ProcessingobjecttypeSCHEMA_EXPORT/TABLE/TABLE_DATATotalestimationusingBLOCKSmethod:1.315GB在执行过程中,可以按 Ctrl+C 组合键退出当前交互模

11、式,退出之后,导出操作不会停止,这不同于 Oracle 以前的 EXP。以前的 EXP,如果退出交互式模式,就会出错终止导出任务。由于 EXPDP 是数据库内部定义的任务,已经与客户端无关,退出交互之后会进入 export 的命令行模式,此时支持 status 等查看命令:Exportstatus-查看当前JOB的状态及相关信息DATAPUMP 与传统的 EXP/IMP 相比它还可以对正在运行的 JOB 进行停止和Exportstop_job-暂停 JOB此时通过 status 命令查看到这时 JOB 的状态值是 UNDEFINEDExportstart_job-重启暂停的 JOBExport

12、kill_job-取消当前的 JOB 并释放相关客户会话Exportcontinue_client-通过此命令查看已连接 JOB 的日志Exportexit_client-通过此命令退出 export 模式-已退出 export 模式后再次连接去查看 JOB 的状态用以下命令:oracleLinuxRedHatexpdpdump$expdpsystem/mingyueattach;oracleLinuxRedHatexpdpdump$expdpsystem/mingyueattach=system.HSHISJOB;导生模式罗列:按表模式导由:expdpsystem/mingyueHS2008

13、tables=hs_his.hisholdsinfo,hs_his.hisfundjourdumpfile=expdp_test.dmplogfile=expdp_test.logdirectory=TEST_EXPDPjob_name=hs_hisjob1;按查询条件导由:expdpsystem/mingyueHS2008tables=hs_his.hisfuassettotdumpfile=expdp_test.dmplogfile=expdp_test.logdirectory=TEST_EXPDPjob_name=hs_hisjob2query=whereinit_datebetwee

14、n20080501and20080701;注意:如果 QUERY 条件写得有问题那么下面总是会报以下的错误ORA-39001:invalidargumentvalueORA-39035:DatafilterSUBQUERYhasalreadybeenspecified.按表空间导由:Expdpsystem/mingyueHS2008dumpfile=tablespace_test.dmptablespaces=HS_HIS_DATA,HS_HIS_IDXlogfile=tablespace_test.logdirectory=TEST_EXPDPjob_name=hs_hisjob6;导由整个

15、数据库:expdpsystem/mingyueHS2008dumpfile=full.dmpfull=ylogfile=full.logdirectory=TEST_EXPDPjob_name=hs_hisjob6;使用exclude,include导由数据Include导出用户中指定类型的指定对象仅导出 hs_his 用户下以 HISFU 开头的所有表包含与表相关的索引,备注等不包含过程等其它对象类型:expdphs_his/handsomeHS2008dumpfile=include_1.dmplogfile=include_1.logdirectory=TEST_EXPDPjob_nam

16、e=job_hisjob7include=TABLE:LIKEHISFU%;导出 hs_his 用户下排除 HISFU 开头的所有表:expdpsystem/mingyueHS2008schemas=hs_hisdumpfile=include_1.dmplogfile=include_1.logdirectory=TEST_EXPDPjob_name=job_hisjob7include=TABLE:NOTLIKEHISFU%;仅导出 hs_his 用户下的所有存储过程:expdpsystem/mingyueHS2008schemas=hs_hisdumpfile=include_1.dmp

17、logfile=include_1.logdirectory=TEST_EXPDPjob_name=job_hisjob7include=PROCEDURE;Exclude导出用户中指定类型的指定对象导出 hs_his 用户下除出 TABLE 类型以外的所有对象, 如果表不导出那么与表相关的索引, 约束等与表有关联的对象类型也不会被导出:expdpsystem/mingyueHS2008schemas=hs_hisdumpfile=exclude_1.dmplogfile=exclude_1.logdirectory=TEST_EXPDPjob_name=job_hisjob7exclude=

18、TABLE;导出 hs_his 用户下排除 HISFU 开头的所有表:expdphs_his/handsomeHS2008dumpfile=include_1.dmplogfile=include_1.logdirectory=TEST_EXPDPjob_name=job_hisjob7exclude=TABLE:LIKEHISFU%;导出 hs_his 用户下的所有对象,但是对于表类型只导出以 HISFU 开头的表:expdphs_his/handsomeHS2008dumpfile=include_1.dmplogfile=include_1.logdirectory=TEST_EXPDP

19、job_name=job_hisjob7exclude=TABLE:NOTLIKEHISFU%;注意:1 .如果 content=data_only 那么导出时就不能使用 exclude,include2 .LINUX 及 UNIX*于特殊字符都要加一个转义字符如()等这些字符在 EXPDP 中都要加上一个”进行转义,否则会有如下错误出现:oracleLinuxRedHatexpdpdump$expdphs_his/handsomeHS2008Export:Release.0-Productionon 星期六,1311 月,201017:54:42Copyright(c)200

20、3,2005,Oracle.Allrightsreserved.Connectedto:OracleDatabase10gEnterpriseEditionRelease.0-ProductionWiththePartitioning,OracleLabelSecurity,OLAPandDataMiningScoringEngineoptionsORA-39001:invalidargumentvalueORA-39000:baddumpfilespecificationORA-31641:unabletocreatedumpfile/u03/expdpdump/includ

21、e_1.dmpORA-27038:createdfilealreadyexistsAdditionalinformation:1数据泵导入按表导入:导入 expdp_test.dmp 文件中的表,此文件是以 system 用户按 schemas=hs_his 导出的:impdphs_his/handsomeHS2008dumpfile=expdp_test.dmplogfile=expdp_test.logdirectory=TEST_EXPDPtables=hs_his.hisholdsinfo,hs_his.hisfundjourjob_name=hs_histb1;按用户导入:这种直接按

22、用户导入的方法与 EXP,IMP 相比是用户可以不用存在可以直接导入因为 EXPDP 导出的时候会将用户相关的信息全部导出来,比如用户原来使用的密码,表空间,系统与操作权限等基本上保持用户与删除前的权限一致如下图:impdpsystem/mingyueHS2008schemas=hs_fund,hs_futuresdumpfile=expdp_test.dmplogfile=expdp_test.logdirectory=TEST_EXPDPjob_name=hs_hisut;4ELInuxFeceB/fclnwueOUSZOOBseheftas=h3_fundh3_ucures日皿peilc

23、=部?卧_匚331孤。门工exxgiSiceccoty=TE3T_EXPPp=hsJilsuc;Import掰L蕾33ULQWZ.QFL.Q-Ffodu专口Qh0。星期 L#工。工醺日:孑口Copyright2D03ZOO5Oracle.AllrL典 Bresetved,.ConnectedDracleDacahsse10gEnteLpiclseEditlnnReleaseICLZ.ELl*.。-PtoduaElanLth.rftePaEtltlcnltig,OracleLabelSecuElLyOLAPandDat白MiningScotzlngEngineoprlansHasMItable,PSYSTEK,P-H3_HISlirisuccessCUillylosdedl/unLaadedScattingp,5YSTEHr,tHSISUTsBystEM/FmgHswooEacMietias=is_tiindfhs_ucuteadiiapClle-eKpclp_ceatuflaplDglle=ewpdptest-lagdizeewEy=IEST_EXPDPDb_nane=h3_hi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论