逻辑备份(导出)与恢复(导入)

一、数据泵介绍

         OracleDatabase 10g引入了最新的数据泵(DataDump)技术,数据泵导出导入(EXPDP和

IMPDP)的作用:

                ①实现逻辑备份和逻辑恢复.

                ②在数据库用户之间移动对象.

                ③在数据库之间移动对象

                ④实现表空间搬移.

二、数据泵技术

      1.数据泵优点:

           ①改进性能(较传统的exp/imp速度提高1-2个数量级)

           ②重启作业能力

           ③并行执行能力

           ④关联运行作业能力

           ⑤估算空间需求能力

           ⑥操作网络方式

    2.数据泵组成部分:

           ①数据泵核心部分程序包:DBMS_DATAPUMP

           ②提供元数据的程序包:DBMS_MATADATA

           ③命令行客户机(实用程序):EXPDP,IMPDP

    3.数据泵文件:

           ①转储文件:此文件包含对象数据

           ②日志文件:记录操作信息和结果

           ③SQL文件:将导入作业中的DDL语句写入SQLFILE指定的参数文件中

    4.数据泵的目录及文件位置

           以sys或system用户完成数据泵的导入导出时,可以使用缺省的目录DATA_PUMP_DIR

    SQL> select * from dba_directories;复制代码

          如果设置了环境变量ORACLE_BASE,则DATA_PUMP_DIR缺省目录位置是:

    $ORACLE_BASE/admin/database_name/dpdump复制代码

    否则是:

   $ORACLE_HOME/admin/database_name/dpdump复制代码

       5.帮助

         可以使用help查看expdp和impdp的用法和介绍

     $expdp help=y
     $impdp help=y
复制代码

三、数据泵示例

     1.查看导出数据存放位置

         ①使用数据泵默认的directory   

 SYS@ prod>select * from dba_directories where directory_name='DATA_PUMP_DIR';复制代码

        OWNER            DIRECTORY_NAME            DIRECTORY_PATH          

      SYS             DATA_PUMP_DIR           /u01/admin/prod/dpdump/

        ②为scott授予目录权限

   SQL> grant read,write on directory DATA_PUMP_DIR to scott;复制代码

   2.数据泵导表

导出表

$expdp scott/scott directory=DATA_PUMP_DIR dumpfile=emp1_dept1.dmp tables=emp1,dept1复制代码


查看目录下的导出的文件

导入表(导出的逆操作)

$impdp scott/scott directory=DATA_PUMP_DIR dumpfile=emp1_dept1.dmp复制代码


    3.数据泵导用户

导出scott用户

$expdp system/oracle directory=DATA_PUMP_DIR dumpfile=scott.dmp schemas=scott复制代码


导入scott用户

$impdp system/oracle directory=DATA_PUMP_DIR dumpfile=scott.dmp remap_schema=scott:scott复制代码

    导入scott用户并设置密码为scott

     4.数据泵可传输表空间(适用于大规模数据迁移)

导出表空间

$expdp \'/ as sysdba\' DIRECTORY=DATA_PUMP_DIR DUMPFILE=TB1.DMP tablespaces=TB1复制代码


 导入表空间

$impdp system/oracle  DIRECTORY=DATA_PUMP_DIR DUMPFILE=TB1.DMP tablespaces=TB1;复制代码

     5.数据泵导数据库

导出数据库

$expdp system/oracle DIRECTORY=DATA_PUMP_DIR dumpfile=full.dmp full=y;复制代码

导入数据库

$impdb system/oracle DIRECTORY=DATA_PUMP_DIR dumpfile=full.dmp full=y;复制代码

追加数据

$impdp system/oracle DIRECTORY=DATA_PUMP_DIR dumpfile=expdp.dmp schemas=systemtable_exists_action复制代码



(偷个小懒剩下的图我就不给大家做示范了,要有一颗自我实践的心。-  _  -)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值