Oracle数据泵(Oracle Data Pump)

        Oracle数据泵(Oracle Data Pump) 可以实现数据的高速移动,数据泵是基于数据库服务端的,它运行在数据库内部,而不是一个独立运行的客户端应用程序。

        数据泵由三部分组成:命令行客户端(expdp和impdp)、数据泵API、元数据API。expdp和impdp调用数据泵API和元数据API共同完成数据的迁移。

        数据泵移动数据有四种方式:数据文件复制(Data file copying)、直接路径(direct path)、外部表(external tables)、网络链接导入(network link import)

1.文件目录

        Oracle使用目录对象(directory object)来管理DUMP文件、日志文件和SQL文件。

 创建目录对象,确保数据库对目录有读写权限。

CREATE DIRECTORY DMP_DIR AS 'D:\DUMP' ;

2.导出工具(data pump export)

        导出工具用于把数据库中的数据(包括元数据)导出成一系列的操作系统文件(dump file set),dump文件只能被导入工具执行导入。DUMP文件包括表的数据、元数据和控制信息等。

        包括全库导出模式、模式导出(用户导出)、表导出模式、表空间导出模式、可移动表空间导出模式。

1.全库导出
expdp tuser directory = dmp_dir dumpfile=fulldb.dmp full = y ;

2.模式导出,下例导出用户cc和dd的对象
expdp ttm directory = dmp_dir dumpfile = userdum.dmp schemas = cc,dd ;

3.表导出模式
expdp system directory = dmp_dir dumpfile = dumptable.dmp tables = tuser.info,kk.sales:sales_p2 ;
--导出用户tuser的info表,用户kk的sales表的分区sales_p2的数据

4.表空间导出模式
expdp system directory = dmp_dir dumpfile=dumptbs.dmp tablespace=tbs1,tbs2 ;

5.可移动表空间导出模式
expdp system directory=dmp_dir dumpfile = dumptbs.dmp transport_tablespace = tbs1;
---仅仅导出表空间中表的元数据。

3.导入工具(data pump import)

        导入工具用于把DUMP文件的数据导入目标数据库。

        包括全库导入模式、模式导入、表导入、表空间导入、可移动表空间导入。

1.将用户eus的数据导入用户tt
impdp system directroy=dmp_dir dumpfile=eus.dmp remap_schema=eus:tt

2.表重命名
impdp eus directory=dmp_dir dumpfile = expsdata.dmp tables=eus.emt remap_table=eus.emt:empt;

3.从一个表空间导入另外一个表空间
impdp eus remap_tablespace = s_tbs:t_tbs directory = dmp_dir ;

       

猜你喜欢

转载自blog.csdn.net/aganliang/article/details/86532024