温馨提示×

温馨提示×

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

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

Oracle数据泵

发布时间:2020-07-08 22:21:24 来源:网络 阅读:411 作者:居思涵 栏目:关系型数据库

一、数据泵技术的优点

原有的导出和导入技术基于客户机,而数据泵技术基于服务器。默认所有的转储,日志和其他文件都建立在服务器上。以下是数据泵技术的主要优点:
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
Oracle数据泵
#导出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表及其数据
Oracle数据泵
sqlplus c##tom/tom123 #登录"scott"用户
SQL> select table_name from user_tables; #查看是否恢复成功
Oracle数据泵

六、总结

数据泵使用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;

向AI问一下细节

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

AI