欢迎来到代码驿站!

Oracle

当前位置:首页 > 数据库 > Oracle

oracle备份恢复的具体方法

时间:2021-01-07 11:17:07|栏目:Oracle|点击:

1.1      数据库数据全库备份
注:此操作需要启动数据库。

切换至oracle用户,在OS侧创建备份使用目录:

mkdir /oracle/backup

登录oracle数据库,在数据库中创建备份使用目录

sqlplus / as sysdba

create directory backupdir as '/oracle/backup';

退出sqlplus后,用oracle用户执行全库备份,备份文件生成在/oracle/backup下:

expdp system/System123 DIRECTORY=backupdir DUMPFILE=backup201309XX.dmp  logfile=backup.log full=y

1.2      数据库数据恢复

注:此操作需要启动数据库。

1、  用orale用户登陆数据库服务器

2、  删除要恢复的用户.

sqlplus / as sysdba

drop user USER_NAME cascade;

exit

3、  执行恢复命令

如下语句恢复pgm用户的数据到backup201309XX.dmp状态

impdp system/System123 DIRECTORY=backupdir DUMPFILE=backup201309XX.dmp schemas=pgm TABLE_EXISTS_ACTION=TRUNCATE logfile=restore.log

数据库恢复时注意事项:

exp/imp方式备份恢复数据库无法对数据库定义(也就是表结构之类的)进行删除和修改。

所以,如果在恢复时,数据库表结构发生变化了,则需要将表结构恢复,或将表删除,再执行恢复操作。如果搞不清楚哪些表结构发生了变化,可以先将需要恢复的数据库用户删除,然后再执行恢复操作。

另外,经过证实,删除表后,再恢复该表,存在一个问题:删表的时候,其他表创建的引用这个表的外键删掉。

恢复的时候,无法恢复该外键。这种情况需要恢复后手动创建外键约束。

drop table TABLE_NAME cascade constraints;

impdp system/System123 DIRECTORY=backupdir DUMPFILE=backup201309XX.dmp tables=sdu.E_UC_ENTANN TABLE_EXISTS_ACTION=TRUNCATE logfile=restore_sdu.log

上一篇:分析Oracle生成Statpack步骤

栏    目:Oracle

下一篇:Linux中Oracle数据库备份

本文标题:oracle备份恢复的具体方法

本文地址:http://www.codeinn.net/misctech/41640.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有