1、 create directory backup as /u01/backup;Directory created.(3)注意事项: 我这里是使用sys用户来进行操作的。 如果是其他用户,那么就需要对这个用户进行赋权。 grant create any directory to system;Grant succeeded. select * from dba_sys_privs where grantee=SYSTEMgrantee privilege adm- - -system create any directory nosystem global query rewrite nosy
2、stem create materialized view nosystem create table nosystem unlimited tablespace yessystem select any table no 如果是其他用户使用sys创建的目录,也需要进行赋权,如: grant read,write on directory backup to SYSTEM; 2. 创建测试数据 我们需要演示expdp/impdp的一些功能,所以需要创建2个用户和对应的表空间,并且创建一些测试的数据。 SQL 代码如下: create tablespace dave datafile /u01/
3、app/oracle/oradata/dave/dave01.dbf size 50m; create tablespace bl datafile /u01/app/oracle/oradata/dave/bl01.dbf create user dave identified by dave default tablespace dave temporary tablespace temp; create user bl identified by bl default tablespace bl temporary tablespace temp; grant read,write on
4、 directory backup to dave,bl; grant connect,resource to dave,bl; conn dave/dave;Connected. create table dave(id number,name varchar2(10);Table created. begin 2 for i in 1 . 10 loop 3 insert into dave values(i,dave); 4 end loop; 5 end; 6 /PL/SQL procedure successfully completed. commit;Commit complet
5、e. select * from dave; ID NAME- - 1 dave 2 dave 3 dave 4 dave 5 dave 6 dave 7 dave 8 dave 9 dave 10 dave10 rows selected. conn bl/bl; create table bl(id number,name varchar2(10); 2 for i in 10 . 20 loop 3 insert into bl values(i,bl 5 commit; 6 end; 7 / select * from bl; 10 bl 11 bl 12 bl 13 bl 14 bl
6、 15 bl 16 bl 17 bl 18 bl 19 bl 20 bl11 rows selected.3. 开始测试3.1 FULL=Y全库导出(1)不指定Job_nameoracleqs-dmm-rh2 $ expdp / as sysdba/ directory=backup full=y dumpfile=fullexp.dmp logfile=fullexp.log parallel=2;- 注意使用sys 的格式,还有full=y 导出的是非sys和system用户的对象。Export: Release 10.2.0.4.0 - Production on Friday, 18
7、March, 2011 15:05:54Copyright (c) 2003, 2007, Oracle. All rights reserved.Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing optionsStarting SYS.SYS_EXPORT_FULL_02: /* AS SYSDBA directory=backup fu
8、ll=y dumpfile=fullexp.dmp logfile=fullexp.log parallel=2 Estimate in progress using BLOCKS method.Processing object type DATABASE_EXPORT/SCHEMA/TABLE/TABLE_DATATotal estimation using BLOCKS method: 18.68 MBMaster table successfully loaded/unloaded*Dump file set for SYS.SYS_EXPORT_FULL_02 is: /u01/ba
9、ckup/fullexp.dmpJob successfully completed at 15:07:27 expdp/impd 是Job形式的,会调用DBMS_DATAPUMP PL/SQL包,这个API提供高速的导出导入功能;还有DBMS_METADATA PL/SQL包,这个包是将metadata(对象定义)存储在XML里。 所有的进程都能load 和unload 这些metadata。 在备份期间,会自动的生成一张与Job_name 相同名称的表, 该表在备份期间保存metadata数据。 当备份技术后,自动删除该表。 我们可以使用SQL: SQLselect * FROM dba_
10、datapump_jobs 查看Job 的信息。 如果意外情况导致备份Job失败,那么对应保存metadata的表,还是会存在。 这个时候,如果查询dba_datapump_jobs,会显示该Job为not running。 这时候,我们只需要drop 掉对应的表,在查询dba_datapump_jobs。 就没有记录了。 这个也是一种处理方法。 在开始我就说了,这里没有指定Job name。 所以系统自动给我们生成了一个:SYS_EXPORT_FULL_02。 默认是从SYS_EXPORT_FULL_01开始,因为我之前有一个没有运行的Job,所以这里从2开始了。(2)指定Job_name directory=backup full=y dumpfile=fullexp3.dmp logfile=fullexp3.log parallel=2 job_name=daveJob;-在这里我指定了Job_name29:56DAVEJOB directory=backup full=y dumpfile=fullexp3.dmp logfile=fullexp3.log parallel=2 job_na
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1