资源预览内容
第1页 / 共22页
第2页 / 共22页
第3页 / 共22页
第4页 / 共22页
第5页 / 共22页
第6页 / 共22页
第7页 / 共22页
第8页 / 共22页
第9页 / 共22页
第10页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第10章 Oracle数据库的逻辑备份学习要点学习要点EXP/IMP 命令的使用EXPDP/IMPDP 命令的使用 本章主要内容vv导出导出/导入导入vvOracle 的数据泵技术的数据泵技术vvEXP/IMP和和EXPDP/IMPDP的区别的区别10.1 数据导出导入v数据库的导入导出实用工具IMP和EXP是 Oracle 9i版本以前的逻辑备份与恢复方式,但是在Oracle 9i和Oracle 10g以后仍然保留了这个功能。v利用Export可将数据从数据库中提取出来,利用IMP则可将提取出来的数据送回Oracle数据库中去,分为简单导入导出和增量导入导出 数据导入导出模式分为三种模式:表方式、用户方式和全数据库方式 vv10.1.1 10.1.1 数据导出数据导出EXPEXPvv1 1数据导出方法数据导出方法vv(1 1)交互式。)交互式。vvCIMPCIMPvv这样会在后面的执行中边执行导入边要求回答问题。这样会在后面的执行中边执行导入边要求回答问题。vv(2 2)命令行方式。)命令行方式。vvCEXP CEXP 用户名用户名/ /密码密码SERVICE SERVICE 参数参数=VALUE=VALUEvv其中:其中:vv用户名用户名/ /密码:是连接目标数据库的用户和密码。密码:是连接目标数据库的用户和密码。vvSERVICESERVICE:要连接的目标数据库名称。:要连接的目标数据库名称。vv参数:如表参数:如表10-210-2所示。所示。表10-2 EXP和IMP命令参数表参数VALUE描述ROWSY,NY导入表数据(导入数据行),N只导入表结构FROMUSER用户名从FROMUSER参数列出的用户所属的对象可以装入到TOUSER列出的用户模式中TOUSER用户名INDEXESY,NY指定索引和表一起导入,N索引和表不一起导入FULLY,NY导入整个数据库,N整个文件FILE输入文件名输入文件(EXPDAT.DMP)DESTROYY,NN不覆盖表空间数据文件,Y覆盖表空间数据文件INDEXESY,NY导入索引,N不导入索引v2数据导出模式v表方式,将指定表的数据导出。命令行使用TABLES选项来完成。v(1)导出表是使用EXP工具将一个或多个表的结构和存储的数据导出到操作系统文件中。一般用户可以导出自己方案的表,如果要导出其他用户的表,则要求该用户必须具有EXP_FULL_DATABASE角色或DBA角色。vv(2)用户方案方式,将指定用户的所有对象及数据导出。命令行使用OWNER选项来完成。vv【例】将数据库中system用户与sys用户的表导出。vvSQLexp system/managerTEST file=d:daochu.dmp owner=(system,sys)vv(3)数据库方式,将数据库中的所有对象导出。命令行使用FULL选项来完成。vv(4 4)增量导出。增量导出是一种常用的数据备份)增量导出。增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作方法,它只能对整个数据库来实施,并且必须作为为SYSTEMSYSTEM来导出。在进行此种导出时,系统不来导出。在进行此种导出时,系统不要求回答任何问题。导出文件名缺省为要求回答任何问题。导出文件名缺省为export.dmpexport.dmp,否则必须在命令行中指出要用的文,否则必须在命令行中指出要用的文件名。件名。vv增量导出包括三个类型:增量导出包括三个类型:“ “完全完全” ”增量导出、增量导出、“ “增量型增量型” ”增量导出、增量导出、“ “累计型累计型” ”增量导出。增量导出。vv【例例】“ “完全完全” ”增量导出。即备份整个数据库。增量导出。即备份整个数据库。vvC EXP system/manager C EXP system/manager inctypeinctype=complete =complete file=990702.dmpfile=990702.dmpvv10.1.2 10.1.2 数据导入数据导入IMPIMPvv1 1数据导入方法数据导入方法vv数据导入(数据导入(ImportImport)的过程是数据导出()的过程是数据导出(ExportExport)的逆过)的逆过程,它们的数据流向不同。程,它们的数据流向不同。vv(1 1)交互式。)交互式。vvCIMPCIMPvv这样会在后面的执行中边执行导入边要求回答问题。这样会在后面的执行中边执行导入边要求回答问题。vv(2 2)命令行方式。)命令行方式。vvC IMP C IMP 用户名用户名/ /密码密码SERVICESERVICE PARA=VALUE PARA=VALUE PARA=VALUEPARA=VALUEvv其中:其中:vvSERVICESERVICE:数据库名称。:数据库名称。vvPARAPARA:导入参数:导入参数 vv2 2数据导入模式数据导入模式vv数据导入分为四种模式:表模式、用户模式、数据库模式、数据导入分为四种模式:表模式、用户模式、数据库模式、增量模式。增量模式。vv(1 1)导入表。)导入表。vv【例例】将导出文件将导出文件d:daochu.dmpd:daochu.dmp中的表中的表table1table1导入。导入。vvSQLIMP SQLIMP system/managerTESTsystem/managerTEST file=d:daochu.dmp file=d:daochu.dmp tables=(table1)tables=(table1)vv基本上上面的导入导出够用了,不少情况下我是将表彻底基本上上面的导入导出够用了,不少情况下我是将表彻底删除,然后导入。删除,然后导入。vv(2 2)导入用户方案。)导入用户方案。如果导入用户自己的方案使用用户如果导入用户自己的方案使用用户名名/ /密码和密码和FILE FILE 选项即可。如果把数据导入其他用户中,选项即可。如果把数据导入其他用户中,则必须具有则必须具有DBADBA权限或权限或IMP_FULL_DATABASEIMP_FULL_DATABASE角色角色。vv【例例】用户导入自己的方案。用户导入自己的方案。vvCIMP CIMP sunny/passsunny/passTEST FILE=SAMPLE.DMPTEST FILE=SAMPLE.DMPvv(3)导入数据库。导入数据库使用FULL选项来完成。vv【例】利用导出文件SAMPLE.DMP把数据导入数据库TEST。vvCIMP sunny/passTEST FILE=SAMPLE.DMP FULL=Yvv(4 4)增量导入。)增量导入。vv【例例】如果在星期日,数据库遭到意外破坏,数据库管理如果在星期日,数据库遭到意外破坏,数据库管理员可按以下步骤来恢复数据库。员可按以下步骤来恢复数据库。vv1 1)用命令)用命令CREATE DATABASECREATE DATABASE重新生成数据库结构。重新生成数据库结构。vv2 2)创建一个足够大的附段。)创建一个足够大的附段。vv3 3)完全增量导入)完全增量导入A A。vvCimp system./manager Cimp system./manager inctypeinctype= RECTORE FULL=Y = RECTORE FULL=Y FILE=AFILE=Avv4 4)累计增量导入)累计增量导入E E。vvCimp system/manager Cimp system/manager inctypeinctype= RECTORE FULL=Y = RECTORE FULL=Y FILE =EFILE =Evv5 5)最近增量导入)最近增量导入F F。vvCimp system/manager Cimp system/manager inctypeinctype=RESTORE FULL=Y =RESTORE FULL=Y FILE=FFILE=F10.2 Oracle的数据泵技术v10.2.1 概述vOracle 10g中增加了一个数据逻辑备份的方法,叫做数据泵,这是一种新的导入和导出特性,它彻底改变了数据库用户已经习惯的过去几代 Oracle 数据库的客户/服务器工作方式。现在服务器运行导出和导入任务,可以通过并行方式快速装入或卸载大量数据。10.2.2 导入导出方法与目录对象v当作为一个没被授权的用户进行导入时,你需要连接到目标模式。如果你拥有 IMP_FULL_DATABASE 角色,那么你可以用自己的身份登录,然后导入到任何目标模式。v数据导入导出模式分为如下四种模式:表方式、用户方式、表空间模式和全数据库方式 v所以如果要使用数据泵对数据库进行导入导出,需要如下几个步骤:v(1)建立目录对象。v(2)将目录对象授权给要执行导入导出的用户。v(3)此用户进行导入导出。v1建立目录对象v目录对象就是转储文件和日志文件的位置。v【例】创建目录对象export_dumps,使它指向物理目录c:a。vSQLCREATE DIRECTORY export_dumps AS c:a;v2将目录对象授权给用户v【例】把read和write权限授权给用户user_abc,使得此用户可以对目录对象export_ dumps有读和写的权限。vSQLGRANT read, write ON DIRECTORY export_dumps TO user_abc;v10.2.3 数据导出EXPDPv1导出一个表v【例】把用户SCOTT的两个表,即部门表DEPT和职工表EMP导出到文件EXP1. DMP中,其目录对象为 DUMP。vC:EXPDP SYSTEM/ORACLE DIRECTORY=DUMPvDUMPFILE=EXP1.DMP TABLES=SCOTT.DEPT,SCOTT.EMP;v2导出表空间v【例】导出一个表空间USER01的所有对象。vC:EXPDP SYSTEM/ORACLE DIRECTORY=DUMP DUMPFILE=A.DMP vTABLESPACE=USER01;v3导出数据库v【例】导出数据库。vC: EXPDP SCOTT/TIGER DIRECTORY=DUMP DUMPFILE=DUMP.DMP FULL=Yv4导出用户方案v【例】导出用户SYSTEM和SCOTT的所有对象方案。vC:EXPDP SYSTEM/ORACLE DIRECTORY=DUMP DUMPFILE=A.DMP vSCHMAS=SYSTEM,SCOTT;v10.2.4 数据导入IMPDPv1导入表v【例】导入表DEPT和EMP。vC:IMPDP SCOTT/TIGER DIRECTORY=DUMP_DIR DUMPFILE=AA.DMP vTABLES=DEPT,EMP;v2导入用户方案v【例】导入用户SCOTT的所有对象。vC: IMPDP SCOTT/TIGER DIRECTORY=DUMP_DIR DUMPFILE=AA.DMP vSCHEMAS=SCOTT;v3导入数据库v【例】利用转储文件AA.DMP和目录对象DUMP_DIR导入整个数据库vC: IMPDP SCOTT/TIGER DIRECTORY=DUMP_DIR DUMPFILE=AA.DMP vFULL=Y;v4导入表空间USER01v【例】利用转储文件AA.DMP 和目录对象DUMP_DIR导入USER01表空间。vC: IMPDP SCOTT/TIGER DIRECTORY=DUMP_DIR DUMPFILE=AA.DMP vTABLESPACES=USER01;v(1)EXP和IMP 是客户端工具,用于客户端和服务器端。v(2)EXPDP和IMPDP是服务器端工具,只能用于服务器端。10.3 EXP/IMP和EXPDP/IMPDP区别10.5 本章小结v Oracle数据导入导出IMP/EXP就相当于Oracle数据还原与备份。大多数情况下都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据的丢失)。v EXP命令可以把数据从远程数据库服务器导出到本地的DMP文件,IMP命令可以把DMP文件从本地导入到远程的数据库服务器中。v 本章主要介绍了传统的数据导入导出工具的使用和数据泵导入导出的方法。EXP和IMP 是客户端工具,用于客户端和服务器端。EXPDP和IMPDP是服务器端工具,只能用于服务器端。
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号