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备份恢复的具体方法就介绍到这了。人生之间,有些偶遇,因为行色匆匆,我们擦肩而过;有些机缘,因为缺少珍惜,我们失之交臂。有时由于任性,我们错失了一段光华;有时太过冲动,我们错过了一生的相守。有些人,因为陪你走的时间长了,你便淡然了,漠视了,其实是他们给你撑起了生命的天空;有些人,分开了,就忘了吧,残缺是一种大美。更多相关oracle备份恢复的具体方法内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!