Oracle数据库之Oracle数据泵
小标 2019-06-24 来源 : 阅读 2142 评论 0

摘要:本文主要向大家介绍了Oracle数据库之Oracle数据泵,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助。

本文主要向大家介绍了Oracle数据库之Oracle数据泵,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助。

Oracle数据库之Oracle数据泵

一、数据泵技术的优点


原有的导出和导入技术基于客户机,而数据泵技术基于服务器。默认所有的转储,日志和其他文件都建立在服务器上。以下是数据泵技术的主要优点:
1、改进了性能
2、重新启动作业的能力
3、并行执行的能力
4、关联运行作业的能力
5、估算空间需求的能力
6、操作的网格方式
7、细粒度数据导入功能
8、重映射能力


二、数据泵导出和导入的用途


1、将数据从开发环境转到测试环境或产品环境
2、将数据从开发环境转到测试环境或产品环境
3、在修改重要表之前进行备份
4、备份数据库
5、把数据库对象从一个表空间移动到另一个表空间
6、在数据库直接移植表空间
7、提取表或其他对象的DDL
注意:数据库不建立完备的备份,因为在导出文件中没有灾难发生时的最新数据。但是对于较小的数据库和个别的表空间的导出,数据导出仍然是一个可行的备份工具。


三、数据泵的组成部分


数据泵技术主要有三个以下部件组成:
DBMS_DATAPUMP程序包。 这是驱动数据字段元数据装载和卸载的主要引擎。DBMS_DATAPUMP程序包包括数据泵技术的核心部分,此核心部分以过程的形式出现,实际驱动数据装载和卸载。
DBMS_METADATA。 为了提取并修改元数据,Oracle提供了DBMS_METADATA程序包。
命令行客户机。两个实用程序expdp和impdp进行导出和导入工作


四、数据泵文件


对于数据泵转储文件,可以使用三种类型的文件:
转储文件:此文件存储实际原数据
日志文件:记录数据泵操作的消息和结果
SQL文件:数据泵使用一种特殊的参数sqlfile,把导入作业中要执行的所有DDL语句写入一个文件中。数据泵并不实际执行SQL,它仅仅是将DDL语句写入由SQLFILE参数制定的文件中。


五、操作


chmod -R 777 /opt     //root模式下开放/opt文件夹的权限
su - oracle   //切换oracle用户
mkdir /opt/app/bak    //创建数据泵备份文件目录
sqlplus / as sysdba       //使用管理员身份登录
SQL> create directory dump_dir as '/opt/app/bak';     #新建目录对象dump_dir,将目录"/opt/app/bak"进行映射
SQL> create user c##tom identified by abc123  #创建"c##tom"测试用户并授权
2  default tablespace users
3  temporary tablespace temp
4  quota unlimited on users;
grant connect,resource,dba to c##tom;   #授权连接、管理数据库以及dba管理员权限
grant read,write on directory dump_dir to c##tom;  #授权用户对directory目录进行读、写执行权限
conn c##tom/abc123    #切换c##tom用户
用tom用户创建测试数据:info,grade两个表
create table info
(
id number(5),
name varchar(10)
);
insert into info values(1,'zhangsan');  #随便插入一条数据


create table grade
(
id number(5),
name varchar(10),
score varchar(5)
);
insert into grade values(1,'lisi','88');    #表grade中插入一条数据


导出数据
expdp c##tom/abc123 directory=dump_dir dumpfile=tom.dmp tables=info,grade

#导出c##tom用户下的表
解析:
directory    #指定其路径映射的别名名称,导出数据的路径
dumpfile   #指定转储文件的名称,默认名称为expdat.dmp
tables        #指定表模式导出
查看导出的数据文件: ls /opt/app/bak/


导入数据
sqlplus c##scott/abc23       #使用"tom"用户登录
SQL> drop table info;     #模拟故障删除其中一张表
恢复数据:
impdp c##tom/tom123 directory=dump_dir dumpfile=tom.dmp tables=info #恢复info表及其数据

sqlplus c##tom/tom123    #登录"scott"用户
SQL> select table_name from user_tables;    #查看是否恢复成功

六、总结


数据泵使用EXPDP和IMPDP时应该注意的事项:
1、EXP和IMP是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用。
2、EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用。
3、IMP只适用于EXP导出的文件,不适用于EXPDP导出文件;IMPDP只适用于EXPDP导出的文件,而不适用于EXP导出文件。
4、expdp或impdp命令时,可暂不指出用户名/密码@实例名 as 身份,然后根据提示再输入,如:
expdp schemas=scott dumpfile=expdp.dmp DIRECTORY=dir;

   

本文由职坐标整理并发布,希望对同学们学习Oracle有所帮助,更多内容请关注职坐标数据库Oracle数据库频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved