oracle数据库的备份与恢复(expdp与impdp)

参考:http://blog.csdn.net/oraclemch/article/details/5551634

oracle 11g 初学者指南

http://www.cnblogs.com/netsql/articles/1745978.html

网上的资料都很零碎,而且大部分都不能完成要求的功能,所以做了些整理与完善

准备工作

1 在环境变量中队bin目录进行配置。默认情况下,安装oracle数据库时,将自动配置相应的环境变量,

例如D:/oracle/product/10.2.0/db_1/BIN

2 在oracle安装路径的bin文件夹中,确定expdp.exe和impdp.exe文件的存在。

3 创建一个外部目录。

data pump要求为将要创建和读取的数据文件和日志文件创建目录,用来指向

使用的外部目录。在oracle中创建目录对象时,可以使用 create directory

语句。

【实例】

1,检查,高级环境变量-pathpath里面有无bin目录

2,检查expdp.exe、impdp.exe文件是否存在。

3,建立目录

       c:/> sqlplus /nolog
       sql> conn sys/sys as sysdba
       sql> create directory mypump as 'd:/app/temp';
       sql> grant read, write on directory mypump to scot

实现数据导出

【实例】

1,表模式导出

expdp scott/scott_2009 directory=mypumpdumpfile=expdptab.dmp tables=dept,emp

(select * from dba_tablespaces; altertablespace testspace online;)

2,schema模式导出

(ORA-39083 这个错误的原因是出在用户的权限上,而且是在导出的时候在expdp之前执行  grant EXP_FULL_DATABASE to scott;)

expdp system/system directory=mypumpdumpfile=expdp.dmp schemas=scott nologfile=y

3,表空间数据导出

expdp system/system directory=mypumpdumpfile=expdpspace.dmp tablespaces=EPISCMCC_DTS

4,全库模式导出

expdpsystem/system directory=mypump dumpfile=expdp.dmp full=y

实现数据导入

1,表模式导入

impdpscott/scott_2009 directory=mypump dumpfile=expdptab.dmp tables=dept,emp

2,schema模式导入

impdpsystem/system directory=mypump dumpfile=expdp.dmp schemas=scott

3,表空间数据导入

impdp system/tiger directory=mypump dumpfile=expdspaces.dmp remap_tablespace=EPISCMCC_DTS:EPISCMCC_DTS table_exists_action=replace

4,全库模式导入

impdpsystem/system directory=mypump dumpfile=expdp.dmp full=y table_exists_action=replace

其中:在表空间导入与全库导入的时候要事先创建表空间与相应的表空间下的用户具体步骤如下:

导入到数据库之前,要在新数据库创建相应的表空间及用户

其中源数据库中的表空间为EPICMCC_DTS,该表空间下的用户为EPICMCC

/*创建临时表空间*/
create temporary tablespace EPISCMCC_TEMP
tempfile 'C:\app\z002w00r-e01\oradata\orcl\EPISCMCC_TEMP.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local

/*创建表空间*/
create tablespace EPISCMCC_DTS
logging
datafile 'C:\app\z002w00r-e01\oradata\orcl\EPISCMCC_DTS.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local

/*创建用户指定表空间*/
create user EPISCMCC identified by tiger
default tablespace EPISCMCC_DTS
temporary tablespace EPISCMCC_TEMP

/*给用户授权*/
grant connect,resource,dba to EPISCMCC
时间: 2024-10-25 03:54:45

oracle数据库的备份与恢复(expdp与impdp)的相关文章

利用SHELL脚本实现将Oracle数据库的每日EXPDP导出文件复制到远程服务器

利用SHELL脚本实现将Oracle数据库的每日EXPDP导出文件复制到远程服务器 作者:赵全文 网名:guestart 我们有一套生产环境的Oracle数据库,虽然每天都有RMAN备份,但是也招架不住开发人员隔三差五就说要恢复几张表的前几天的数据到生产环境当中,针对这样的需求,用RMAN来恢复某几张表的数据就显的特别费劲了.于是我决定用Oracle数据库的逻辑备份工具EXPDP(数据泵导出)专门导出特定用户下的所有表的数据,并在每天凌晨4点通过LINUX操作系统的CRONTAB的计划任务定时执

数据库导入导出expdp,impdp

数据库操作 (1)数据库导入导出expdp,impdp 在导入导出数据库的时候,经常会用到exp和imp,在数据量小的情况下可以随意使用,但是当数据量大,表中数据有百万,千万条的时候,就要等好久好久好久.. oracle官方肯定也考虑到了这样的问题,于是出现了expdp和impdp,这是oracle 10g版本出的一个新功能,使用数据泵导入导出数据,据官方推荐说使用数据泵导入导出会比普通的导入导出快十倍,可以说是非常强大了. 首先连接到数据库,使用cmd执行以下命令 sqlplus /nolog

Oracle数据库的备份与恢复

Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP).热备份和冷备份.导出备件是一种逻辑备份,冷备份和热备份是物理备份. 一. 导出/导入(Export/Import) 利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去. 1. 简单导出数据(Export)和导入数据(Import) Oracle支持三种方式类型的输出: (1).表方式(T方式),将指定表的数据导出. (2).用户方式(U方式),将指定用户的所有

Oracle 数据库备份还原(Expdp/impdp)记录

最近公司将原数据库服务器切换.之前没整过这块,也是一堆的度娘.经过不停的摸索,终于成功了.现在将这份艰辛记录下来,方便自己以后查阅的同时,方便有类似需求的同学参考. 我们此次切换共分:ERP.LOS.WMS三个系统. 因前期搭建,这三个系统均在同一实例.以不同的表空间.用户区分. 此次切换思路: 1)以实例的方式备份.还原.命令 Exp/imp (命令不再叙述) 优点:省事.可整体导出还原.内网之间切换,可远程备份(如:将 192.168.1.1 备份至 192.168.1.2); 结果:失败;

Oracle数据库迁移方式一:impdp+dblink

实验环境: 源库:  192.168.2.200  SID=testdb 目标库:192.168.2.100  SID=testdb 实验目的: 使用impdp+dblink的方式 将192.168.2.200数据库上的jtrms用户的所有数据导入到目标数据库192.168.2.100 注意:使用impdp+dblink 的方式,这样就节省了数据导出(expdp),然后再导入的过程. 实施步骤: 一.源库操作: 1.首先检查源库要迁移的用户信息: SQL> select USERNAME,DEF

oracle 数据库的备份与恢复

物理备份是对数据库的操作系统物理文件(如数据文件.控制文件.和日志文件等)的备份 逻辑备份是对数据库逻辑组件(如表 视图和储存过程等数据库对象)的备份 故障类型 导致数据库操作中止的故障包括四种类型: 故障类型 1.语句故障 2.用户进程故障 3.实例故障 4.介质故障 在执行sql语句过程中发生的逻辑故障可导致语句故障.如果用户编写的SQL无效,就会发生逻辑故障. 当用户程序出错而无法访问数据时发生用户进程故障.导致用户进程故障的原因是异常断开连接或异常终止进程. 当oracle的数据库实例由

Oracle数据库冷备份与恢复(救命稻草)

说明,只要是同样系统,同样数据库版本,是可以做冷备恢复.冷备份数据必须是数据库不在open状态下.以oracle11gR2为例. 一.冷备份与冷恢复 具体步骤如下. 1. 复制旧的数据库文件 (1) 用SQLPlus连接数据库: sqlplus 用户名/密码 as sysdba(2) 关闭DB : shutdown immediate: (3) 复制文件到其他地方存储实现备份1)复制三个文件夹 admin: oradata(datafile, controlfile,redo[注:数据文件, 控

关于oracle数据库备份还原-impdp,expdp

初始化: -- 创建表空间 CREATE TABLESPACE 表空间名 DATAFILE '文件名.dat' SIZE 100M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED; -- 创建用户(oauser) --connect internal CREATE USER oauser IDENTIFIED BY oauser; ALTER USER oauser DEFAULT TABLESPACE tablespace_name; ALTER USER o

Linux服务器下对Oracle数据库expdp(导出)和impdp(导入)

紧接上篇文章,Oracle数据库架构已经创建完成,我的需求是:将老服务器上的数据库迁移到新的数据库上. 这就用到impdp(导入)操作. 要想实现对新数据库的impdp(导入)工作, 首先需要从老的数据库上做expdp(导出)操作,命令如下: expdp 用户名/密码 schemas=iirspublish dumpfile=导出数据库名.dmp DIRECTORY=目录名 logfile=导出日志.log 备注:schemas,你用"用户 user"来理解就很容易了,每个模式(use