数据泵---EXPDP

发布时间:2020-07-09 07:27:17 作者:心神cgr
来源:网络 阅读:843

EXPDP/IMPDP只能在数据库服务器段运行

特点:

采用路径上载和直接路径装入技术,提高了执行效率

可以在数据库服务器端多线程并行执行大量数据的导入与导出

可以使用DBMS_DATAPUMP PL/SQL API建立、检测和调整数据库导出、导入任务

数据泵技术具有重新启动作业的能力

注意:EXPDP实用程序与EXP实用程序相互之间不相容

创建目录对象

使用CREATE DIRECTORY语句创建目录对象

create or replace directory dumpdir as 'xxxxxx'

使用GRANT语句为用户授予目录对象读写权限。

grant read,write on directory to hr;

可以查询数据字典视图DBA_DIRECTORIES查看数据库所有的目录对象

select * from DBA_DIRECTORIES;


导出模式

全库导出模式

通过FULL指定,导出整个数据库。用户需要具有DATAPUMP_EXP_FULL_DATABASE 角色

模式导出模式--------将一个或多个模式中的对象元数据几行数据导出到转储文件中

通过参数SCHEMAS指定,是默认的导出模式。导出指定模式中的所有对象

有DATAPUMP_EXP_FULL_DATABASE 角色------可以指定要进行导出的角色列表,包括导出模式的定义以及模式具有的系统权限

没有DATAPUMP_EXP_FULL_DATABASE 角色--------只能导出用户对应的模式。不能导出SYS模式的对象,如果没有在导出模式中明确指出,参照的模式对象不会被导出

表导出模式

通过参数TABLES指定,导出指定模式中指定的所有表,分区,及其依赖对象。

如果指定了参数TRANSPORTABLE=ALWAYS,则只有对象元数据被导出。

如果要导出的表不属于当前用户模式,需要具有DATAPUMP_EXP_FULL_DATABASE角色。

注意:表中的列的数据类型定义不会被导出,因此需要在目标数据库中也具有列的数据类型的定义。

参照模式中的对象不会被导出。


表空间导出模式---------是将一个或多个表空间的所有表及其依赖对象的元数据及行数据导出到转储文件

通过参数TABLESPACES指定,导出指定表空间中所有表以及其依赖对象的元数据和行数据


传输表空间导出模式

通过参数TRANSPORT_TABLESPACES指定,导出指定表空间中所有表及其依赖对象的元数据

表空间包含的数据文件需要单独导出进行复制。

传输表空间导入的时候需要导入包含表空间元数据的转储文件,并指定相应的数据文件。

表空间传输模式的导出一旦停止就无法重新开始,而且不能并行进行表空间传输模式的导出。

传输表空间的导出模式不支持加密列的导出。

不能将导出的传输表空间导入低版本的数据中。


命令参数----可以使用expdp help=y 获得,太多了不想枚举



交互命令
	Ctrl+C组合键进入交互式命令模式

	常用
		add_file
		exit_client
		filesize
		help
		kill_job
		parallel
		start_job
		status
		stop_job
示例 1
	导出hr模式下employees表和departments表,
	转储文件为emp_dept.dmp ,
	日志文件名称emp_dept.log,
	作业名称为emp_dept_job,
	导出操作启动3个进程
	(可以使用query参数设置导出条件,知道出符合条件的行与列数据)
expdp hr/hrdirectory=dumpdir tables=employees,departments dumpfile=emp_dept.dmp logfile=emp_dept.log jobname=emp_dept_job parallel=3

示例 2
	导出hr.employees表中部门号大于50且工资大于7000元的员工信息
expdp hr/hr directory=dumpdir dumpfile=exp2.dmp tables=employees nologfile=y query='employees:"where department>50 and salary>7000"'

示例 3
	在导出hr.employees,hr.departments,hr.locations 数据之前估计所需空间的大小
expdp hr/hr directory=dumpdir estimate_only=yes tables=employees,departments,locations logfile=estimate.log

示例 4 	
	导出hr模式下的所有对象的元书库以及行数据
expdp hr/hr directory=dumpdir dumpfile=hr.dmp logfile=hr.log schemas=hr job_name=exp_hr_schema

示例 5 
	导出example,users表空间中的所有表及其依赖对象的元数据和行数据
expdp hr/hr directory=dumpdir dumpfile=tsp.dmp tablespaces=example,users

示例 6
	导出example,users表空间中所有元数据
expdp hr/hr directory=dumpdir dumpfile=tts.dmp transport_tablespaces=example,users transport_full_check=y

示例 7
	将当前数据全部导出,不写日志文件
expdp hr/hr directory=dumpdir dumpfile=expfull.dmp  full=yes nologfile=yes



推荐阅读:
  1. Oracle使用数据泵 (expdp/impdp)实施迁移
  2. 【DB笔试面试164】在Oracle中,如何彻底停止expdp数据泵进程?

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

数据泵 expdp -exp

上一篇:Ruby源码编译安装

下一篇:Spark 环境部署

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》