这节内容为impdp命令的介绍 ##1. 什么是Data Pump Import Data Pump Import是一个读取expdp生成的dump文件然后将其内容导入到目标系统的工具 它除了读取dump文件也可以不需要dump文件,即Network Import 它通过data filters 和metadata filters 来过滤掉我们不想要导出的内容 ##2. 调用Data Pump Import 我们使用impdp命令来调用Data Pump Import工具 我们指定Import的参数来控制其行为 参数可以在命令行和或参数文件中指定 ###2.1 如何调用Import 后面的章节分别介绍这三个方式 - 命令行 - 参数文件 - 交互式命令 ###2.2 Data Pump Import模式 注意目标数据库JOB的权限是由导入时用户决定的,即dba_jobs的LOG_USER 和PRIV_USER列 如需解决此问题请在导出和导入时使用相同的用户 **Full Import Mode** 该模式导入所有数据(dump文件或源数据库),使用**full**参数 必须有 EXP_FULL_DATABASE 权限 **Schema Mode** 导入属于schema的所有数据,使用**schema**参数 如果schema中对象引用的对象不包含在schema参数中,则该引用的对象不导入 **Table Mode** 该模式导入指定的表,使用**tables**参数 **Tablespace Mode** 该模式导入指定表空间的对象,包含其他表空间的引用对象,使用**TABLESPACES**参数 **Transportable Tablespace Mode** 该模式用于传输表空间的数据迁移,采用**TRANSPORT_TABLESPACES**参数 ##3. IMPDP过滤方式 **Data Filters** 使用QUERY 和 SAMPLE 参数控制需要导入的数据 每种方式在同一个JOB中只能指定一次 **Metadata Filters** 使用EXCLUDE and INCLUDE 参数来控制需要导入的对象 EXCLUDE and INCLUDE 不能同时使用 如果导入一个pakcage则它的grant权限也会导入 如果排除一个表,则它上面的索引,触发器,grant以及约束都不会被导入 同一个Metadata Filter参数可以被多次指定,如指定多次则他们关系为and 可以查询如下视图了解哪些对象可以被过滤 - FULL 模式:DATABASE_EXPORT_OBJECTS - Schema模式:SCHEMA_EXPORT_OBJECTS - 表和表空间模式:TABLE_EXPORT_OBJECTS