Oracle10g数据泵EXPDP和IMPDP备份与恢复数据

一、数据库备份前准备工作

新建备份DIRECTORY目录,并授权给用户

步骤:

1.登录sqlplus

账户名:ptemp 密码:000000 主机字符串:EMPDB

SqlPlus执行语句:conn ptemp/000000@EMPDB as sysdba

提示信息: 登录成功

2.创建DIRECTORY备份目录

SqlPlus执行语句:create DIRECTORY bakupKF_dir as ‘D:\bakupKF’

提示信息: 创建目录成功

3.把DIRECTORY目录授权给用户

SqlPlus执行语句:GRANT READ, WRITE ON DIRECTORY bakupKF_dir TO ptemp;

提示信息: 授权成功

二、EXPDP备份数据(含表结构)

点击:菜单-运行-cmd

执行以下语句:

1.备份整个数据库的表及表定义

Expdp ptemp/powersmart@EMPDBTEST DIRECTORY=bakupCS_dir DUMPFILE=ptemp830.dmp

注:则备份整个数据库的表定义及表数据,默认CONTENT=ALL,所以导出的是整个数据库表定义及表数据

2.备份整个数据库表的数据(无表结构定义)

Expdp ptemp/000000@EMPDB DIRECTORY=bakupKF_dir DUMPFILE=ptemp813data.dmp CONTENT=DATA_ONLY

注意:当设置CONTENT为ALL (默认值)时,将导出对象定义及其所有数据.为DATA_ONLY时,只导出对象数据,为METADATA_ONLY时,只导出对象定义

3.备份指定表的数据及表定义(可多选多个表)

Expdp ptemp/000000@EMPDB DIRECTORY=bakupKF_dir DUMPFILE=ptemp813tab.dmp TABLES=TEST_LR,TEST_LR2,TEST_LR3……

注意:TABLES=TEST_LR,TEST_LR2,TEST_LR3  多个表之间用“,”连接即可

三、IMPDP还原数据

1.还原整个数据库的表及表定义

impdp ptemp/000000@EMPDB DIRECTORY=bakupKF_dir DUMPFILE=ptemp813.dmp TABLE_EXISTS_ACTION=REPLACE

注:TABBLE_EXISTS_ACTION={SKIP (默认)| APPEND |TRUNCATE | REPLACE }

当设置该选项为SKIP时,导入作业会跳过已存在表处理下一个对象;当设置为APPEND时,会追加数据,为TRUNCATE时,导入作业会截断表,然后为其追加新数据;当设置为REPLACE时,导入作业会删除已存在表,重建表并追加数据,注意,TRUNCATE选项不适用与簇表和NETWORK_LINK选项

2.只还原数据(截断表还原方式)

Impdp ptemp/000000@EMPDB DIRECTORY=bakupKF_dir DUMPFILE=ptemp813data.dmp CONTENT=DATA_ONLY TABLE_EXISTS_ACTION=REPLACE

的方式,备份数据库表数据和表定义方式,对已存在的表进行重建!

3.截断表还原数据

Impdp ptemp/000000@EMPDB DIRECTORY=bakupKF_dir DUMPFILE=ptemp813data.dmp TABLE_EXISTS_ACTION=TRUNCATE

注:TABLE_EXISTS_ACTION=TRUNCATE还原的时候会把表定义与表数据分离开,即只还原数据,不还原表定义。但是,在主从表还原时,由于主键关系,主表的数据将恢复失败,但是从表的数据能成功。

解决全库数据还原的办法,可以采用本文“1.还原整个数据库的表及表定义”来解决。

4.还原指定表

impdp ptemp/000000@EMPDB DIRECTORY=bakupKF_dir DUMPFILE=ptemp813tab.dmp TABLES=TEST_LR,TEST_LR2,TEST_LR3 TABLE_EXISTS_ACTION=REPLACE

更多参考资料:http://blog.csdn.net/jojo52013145/article/details/7966047

四、数据库全库数据及表定义实践

1. 业务场景描述

某公司开发部现有两个oracle数据库,分别是开发库EMPDB、测试库EMPDBTEST,现在需要将测试库的数据同步到开发库上,需要适用oracle数据泵实现。

2. 数据库实例信息

2.1 EMPDB实例登录信息

2.2 EMPDBTEST实例登录信息

3. 实现步骤

3.1  创建备份目录

创建备份目录的目的是要告诉数据库实例,哪一个目录是实例专有的目录,并且需要将该目录读、写权限授权给数据库实例用户,在这里,创建目录的意思就等于把某个目录合法化,即起到登记注册的目的。所以,创建备份目录是至关重要的一步。

创建目录过程如下:

①为数据库实例EMPDBTEST创建目录,如下图所示:

执行语句如下(按顺序):

Ⅰ conn ptemp/powersmart@EMPDBTEST as sysdba   (以管理员身份登录)

提示信息:已连接

Ⅱ create DIRECTORY bakupCS_dir as ‘d:\ptemp_bakup_CS’  (创建目录)

提示信息:目录创建成功

注意:此处D盘下必须要有d:\ptemp_bakup_CS该目录,如没有,创建即可

Ⅲ grant read,write on directory bakupCS_dir to ptemp

提示信息:授权成功

②为数据库实例EMPDBTEST创建目录,过程如上。

执行语句如下(按顺序):

Ⅰ conn ptemp/000000@EMPDB as sysdba

Ⅱ create DIRECTORY bakupKF_dir as ‘d:\ptemp_bakup_KF’

Ⅲ grant read,write on directory bakupKF_dir to ptemp

以上操作完成之后,D盘应该有如下两个文件夹:

3.2 备份测试库数据

将EMPDBTEST的全库数据及表定义 备份到D盘下ptemp_bakup_CS文件夹内,备份文件名:PTEMP830.DMP

操作过程:开始-运行-cmd

然后在cmd执行如下语句:

Expdp ptemp/powersmart@EMPDBTEST  DIRECTORY =bakupCS_dir DUMPFILE=ptemp830.dmp

执行过程如图:

导出成功,ptemp_bakup_CS文件夹内将会生成PTEMP830.DMP文件

3.3 将数据同步到开发库

将ptemp_bakup_CS文件夹下的PTEMP830.DMP文件拷贝到ptemp_bakup_KF文件夹内同步数据。

执行语句如下:

Impdp ptemp/000000@EMPDB DIRECTORY=bakupKF_dir DUMPFILE=ptemp830.dmp TABLE_EXISTS_ACTION=REPLACE

执行过程如下:

导入的过程需要耗费大量时间,大概5-10分钟,如计算机屏幕出现静止不动,属正常,请耐心等待!

Oracle10g数据泵EXPDP和IMPDP备份与恢复数据的更多相关文章

  1. 使用数据泵expdp、impdp备份和还原oracle数据库

    前面我已经整理过EXP 和 IMP备份和还原Oracle数据库的方法 今天我们只讲使用数据泵 expdp 和impdp的方法,有的同学会问他们有什么差别呢? EXP和IMP是客户端工具程序,它们既可以 ...

  2. oracle数据泵expdp和impdp使用

    expdp和impdp优缺点 优点: expdp/impdp命令,我们也通常称之为“数据泵(DataPump)”,它具有以下优点: l 在性能上,具有并行处理能力,因此可以获得性能上的优势,加快导入导 ...

  3. 数据泵Expdp和Impdp

    一.数据泵导入导出技术 1.结构 2.目录对象 二.EXPDP参数 1.attach 2.content 3.directory 4.dumpfile 5.estimate 6.estimate_on ...

  4. 【oracle】数据泵expdp与impdp

    1.创建directory create directory dump_dir as 'D:\dump_dir' 2.expdp备份schema expdp system/1qaz2wsx@ETCNC ...

  5. ORACLE 数据泵 expdp/impdp

    ORACLE 数据泵 expdp/impdp 一.概念 Oracle Database 10g 引入了最新的数据泵(Data Dump)技术,数据泵导出导入 (EXPDP 和 IMPDP)的作用: 1 ...

  6. 数据泵expdp,impdp使用结

    EXPDP,IMPDP远程导出,导入数据库到本地 1.本地建立导出用户hr_exp并全然删除机hr的用户 C:\Users\Administrator>sqlplus / as sysdba S ...

  7. Oracle使用数据泵 (expdp/impdp)实施迁移

    实验环境: 1.导出环境:RedHat6.4+Oracle 11.2.0.4.0,利用数据库自带的scott示例用户进行试验测试. Directory:wjq à /tmp/seiang_wjq 2. ...

  8. 数据泵expdp 在rac环境下 paralle 的处理方法

    其实这个是个很常见的问题,写下来做纪念吧.说明:而在11GR2后EXPDP 和 IMDP的WORKER进程在设置parallel参数时会在多个INSTANCE启动,所以DIRECTORY必须在共享磁盘 ...

  9. 40. 数据泵导入导出impdp、expdp

    一.查看管理理员目录(同时查看操作系统是否存在,因为Oracle并不关心该目录是否存在,如果不存在,则出错)select * from dba_directories; 二.创建逻辑目录,该命令不会在 ...

随机推荐

  1. [Swust OJ 1023]--Escape(带点其他状态的BFS)

    解题思路:http://acm.swust.edu.cn/problem/1023/ Time limit(ms): 5000 Memory limit(kb): 65535     Descript ...

  2. python命令行解析工具argparse模块【1】

    argpaser是python中很好用的一个命令行解析模块,使用它我们可以很方便的创建用户友好型命令行程序.而且argparse会自动生成帮助信息和错误信息. 一.示例 例如下面的例子,从命令行中获取 ...

  3. DEDE里有个编码问题,不支持PHP5.4及以上版本!

    公司新配置服务器,没有PHP环境,下载了个PHP5.5.25,配置完毕后,从另外一个服务器转移了一个DEDECMS做的网站,安装后,进入后台,恢复数据发现参数设置里的文本框,只要是中文信息,没有显示, ...

  4. read/write拥塞与非拥塞

    read/write read函数从打开的设备或文件中读取数据. #include <unistd.h> ssize_t read(int fd, void *buf, size_t co ...

  5. JS使用合并数组

    var arr= [4,5,6]; var arr1 = [7,8,9]; var arr2=[1,2,3]; arr.concat(arr1,arr2); //或者使用Arry.prototype. ...

  6. poj 3176 Cow Bowling(区间dp)

    题目链接:http://poj.org/problem?id=3176 思路分析:基本的DP题目:将每个节点视为一个状态,记为B[i][j], 状态转移方程为 B[i][j] = A[i][j] + ...

  7. UVA 10341 Solve It 解方程 二分查找+精度

    题意:给出一个式子以及里面的常量,求出范围为[0,1]的解,精度要求为小数点后4为. 二分暴力查找即可. e^(-n)可以用math.h里面的exp(-n)表示. 代码:(uva该题我老是出现Subm ...

  8. VMware-WorkStation 去掉VM工具栏

    链接地址:http://jingyan.baidu.com/article/8275fc86b95c6246a03cf629.html VMware 是目前用得最多的虚拟机.当开启虚拟机的全屏模式时, ...

  9. [Swust OJ 1132]-Coin-collecting by robot

          题目链接:          http://acm.swust.edu.cn/problem/1132/ Time limit(ms): 1000 Memory limit(kb): 65 ...

  10. javascript 简单实现对两个数组相似度的检验

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...