技术开发 频道

Oracle 10G的Data Pump

    Data Pump根据如下的顺序决定文件的位置:

    1. 对该文件指定的目录对象;
    2. 如果对一个文件没有指定目录对象,那么将默认使用初始化参数中的DIRECTORY指定的对象.

    特权用户和非特权用户

    Data Pump识别两类的用户:特权(Privileged)用户和非特权(Nonprivileged)的用户. Privileged用户具有EXP_FULL_DATABASE 和IMP_FULL_DATABASE权限. 非特权用户不具备这些权限.

    特权用户可以作如下工作:

    导出导入其他用户拥有的数据库对象.
    导出导入非基于模式的对象(比如表空间和模式定义等内容).
    对其他用户启动的Job进行一些操作.

    Data Pump如何访问数据?

    直接路径(Direct Path ,DP)和外部表(External Tables ,ET).ET模式下使用ORACLE_DATAPUMP驱动并使用直接路径API内部数据流格式.Oracle称Data Pump会自动选择最快的方法.

    文件分配

    Data Pump Job管理三种类型的文件: 

    Dump文件
    Log文件 记录一个操作的相关信息
    SQL文件 记录一个SQL_FILE操作输出的记录

    指定文件和额外的附件文件

    对于导出操作,你可以指定 Dump文件,随着操作的进行你发现文件空间有些不够,你可以使用交互模式下的 ADD_FILE 命令添加额外的文件.对于导入的操作.所有的dump文件必须在Job定义的时候指定. Log文件和SQL文件将覆盖存在的文件.Dump文件从不覆盖已经存在的文件.

    设定并行度

    对于导出和导入 ,并行度的设定(通过 PARALLEL 参数指定)应该低于或者等于Dump文件的个数.如果文件个数不足,性能可能会降低(多线程同时访问一个Dump文件).前面已经提及,标准版本10G并行度只有1,所以,这个参数实际上对企业版的10G才是有效的.

    使用替代变量

    在导出和导入操作中,可以使用%U替代变量来匹配文件名字,这样在一定情况下便捷了许多.

    Data Pump中的Export和Import的新的特性相对于旧有的exp/imp,Data Pump中的Export和Import有很多新的特性,包括:

    1 Data Pump Job执行到一半的时候指定最大线程数的能力.
    2 Data Pump job是完全能重新启动的.
    3 从长时间运行的Job分离或者是重新附加上去而不会对Job本身有影响.
    4 支持通过网络的导出导入操作.
    5 Remap_datafile.
    6 支持完美粒度对象选择.
    7 支持对Job的交互命令行模式监控和交互.
    8 对待导入的对象的空间评估.
    9 具备指定数据库版本对象移动能力.
   

0
相关文章