Oracle数据库备份,exp和expdp的区别,imp和impdp的区别

oracle数据泵备份导出导入(备份和还原)

1: 创建dmp导出目录 

create directory 目录名 as '目录路径';

2: 查看当前创建的所有dmp导出目录

select * from dba_directories;

3: 备份和还原

expdp 用户名/密码@oracle服务器地址/数据库实例名 directory=导出目录 schemas=(用户1,用户2)  dumpfile=要导出的文件名.dmp    logfile=导出的日志名.log;

impdp 用户名/密码@数据库实例名 directory=导入目录  dumpfile=要导入的文件名.dmp logfile=导入日志名.log;

oracle数据库普通导出导入(备份和还原)

还原:

imp 用户名/密码@oracle实例名   file=路径\某某某.dmp   log=路径\某某.log    full=y(有时还原报错表空间不存在,就先去创建表空间再还原)

完全备份:

exp 用户名/密码@oracle服务器地址/实例名  file=路径\某某某.dmp  log=路径\某某.log   full=y;

部分用户备份:

exp 用户名/密码@oracle服务器地址/实例名  file=路径\某某某.dmp  log=路径\某某.log  owner=(用户名1,用户名2);

部分表备份:

exp 用户名/密码@oracle服务器地址/实例名  file=路径\某某某.dmp  log=路径\某某.log tables=(表1,表2);

表中部分数据备份:(将表user中的id字段以"1"开头的数据导出):

exp 用户名/密码@oracle服务器地址/实例名 file=路径\某某某.dmp  log=路径\某某.log   tables=(user) query=\" where id  like '1%'\"

———————————————————————————————————————————————

exp和expdp、imp和impdp

Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。

在10g之前,传统的导出和导入分别使用EXP工具和IMP工具,从10g开始,不仅保留了原有的EXP和IMP工具,还提供了数据泵导出导入工具EXPDP和IMPDP.使用EXPDP和IMPDP时应该注意的事项:

1、EXP和IMP是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用。

2、EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用。

3、IMP只适用于EXP导出文件,不适用于EXPDP导出文件;IMPDP只适用于EXPDP导出文件,而不适用于EXP导出文件。

数据泵取只能在服务器端运行,客户端只能用来连接服务器启动导入导出操作

exp和expdp原理对比

1、exp/imp客户端程序,受网络,磁盘的影响;  impdp/expdp服务器端程序,只受磁盘的影响

2、假设文件把文件导出在服务端,exp常规方式是使用SELECT的方式查询数据库中的数据,是需要通过buffer cache并通过sql的语句处理层再转移至exp的导出文件(即要经过sga,pga才传输到客户端,而exp直接路径则是直接从磁盘上将数据转移至exp的导出文件,所以速度更快;而expdp是exp的升级版,相当于exp + direct mode + parallel(可能对导出文件还进行了压缩,这是从导出文件的对比结果发现的,具体不清楚)。所有从总的来说,expdp比exp提供了并行的方式(写入多个导出文件)

impdp的并行机制也让其比imp快很多

你可能感兴趣的:(oracle)