结论:
如果数据库是正常shutdown,非当前日志都可以直接clear来重新生成,而且不会丢失数据,因为正常关闭db,数据已经写入dbf文件了。
唯独当前日志不可以,当前日志必须首先从有效的备份中拷贝一个日志文件过来,然后用
alter database clear unarchived logfile group n;
方法二:用cancel模式恢复数据库
recover database until cancel;
alter database open resetlogs; --resetlogs就是根据控制文件让系统自动重新生成redo
结论:
如果数据库是正常关闭的,用recover database until cancel可以轻松恢复或者说重新建立所有的redo,不再区分是否
是当前日志,而且由于正常关闭不会丢失任何数据,唯一可能丢失的情况就是如果日志还没有归档这种恢复方法由于要
resetlogs所以在恢复完成后日志清零,以前的备份不再起作用,所以建议立即备份。
方法三:通过重新生成控制文件来恢复redo
alter database backup controlfile to trace;
创建控制文件
CREATE CONTROLFILE REUSE DATABASE "ORA9" RESETLOGS ARCHIVELOG
-- SET STANDBY TO MAXIMIZE PERFORMANCE
MAXLOGFILES 50
MAXLOGMEMBERS 5
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 '/T3/ORACLE/oradata/ORA9/redo01.log' SIZE 100M,
GROUP 2 '/T3/ORACLE/oradata/ORA9/redo02.log' SIZE 100M,
GROUP 3 '/T3/ORACLE/oradata/ORA9/redo03.log' SIZE 100M
-- STANDBY LOGFILE
DATAFILE
'/T3/ORACLE/oradata/ORA9/system01.dbf',
'/T3/ORACLE/oradata/ORA9/undotbs01.dbf',
'/T3/ORACLE/oradata/ORA9/cwmlite01.dbf',
'/T3/ORACLE/oradata/ORA9/drsys01.dbf',
'/T3/ORACLE/oradata/ORA9/example01.dbf',
'/T3/ORACLE/oradata/ORA9/indx01.dbf',
'/T3/ORACLE/oradata/ORA9/odm01.dbf',
'/T3/ORACLE/oradata/ORA9/tools01.dbf',
'/T3/ORACLE/oradata/ORA9/users01.dbf',
'/T3/ORACLE/oradata/ORA9/xdb01.dbf',
'/T3/ORACLE/oradata/ORA9/test01.dbf'
CHARACTER SET ZHS16GBK
;
另存为一个脚本运行@clone.sql
打开数据库alter database open resetlogs;
前三种方法都是假设db正常关闭,数据已经写入数据库文件中,所以不会由数据存在redo种,所以clear也不会丢失数据。
方法四:修改系统参数方法
shutdown abort 强行关闭数据库,手动模拟删除redo文件启动数据库后报错,尝试前面三种方法都无法恢复丢失的redo文件
修改init.ora,加入一行
_allow_resetlogs_corruption=true
启动with pfile
打开数据库alter database open resetlogs;
分享到:
相关推荐
在 Oracle 几年的学习中,, 做了很多的实验, 也遇到了很多的问题,在这个过程中,积累了一些学习文档。 也更新到了 blog 上。 因为太多,不便于查阅。 根据自己对 Oracle 的理解,把这些 blog 进行了分类, 并...
Oracle技术文档整理常见问题很详细的讲解,总共含有千多页文档,都是最新, TianleSoftware Oracle 学习手册 在 Oracle 几年的学习中,, 做了很多的实验, 也遇到了很多的问题,在这个过程中,积累了一些学习文档。 ...
在 Oracle 几年的学习中,, 做了很多的实验, 也遇到了很多的问题,在这个过程中,积累了一些学习文档。 也更新到了 blog 上。 因为太多,不便于查阅。 根据自己对 Oracle 的理解,把这些 blog 进行了分类, 并进行...
在 Oracle 几年的学习中 做了很多的实验 也遇到了很多的问题 在这个过程中 积累了一些学习文档 也更新到了 blog 上 因为太多 不便于查阅 根据自己对 Oracle 的理解 把这些 blog 进行了分类 并进行一些整理方便自己...
Oracle技术大牛整理常见问题很详细的讲解,总共含有千多页文档...在 Oracle 几年的学习中,, 做了很多的实验, 也遇到了很多的问题,在这个过程中,积累了一些学习文档。 也更新到了 blog 上。 因为太多,不便于查阅。
在 Oracle 几年的学习中,, 做了很多的实验, 也遇到了很多的问题,在这个过程中,积累了一些学习文档。 也更新到了 blog 上。 因为太多,不便于查阅。 根据自己对 Oracle 的理解,把这些 blog 进行了分类, 并...
从安装Oracle 入门开始 ...Oracle的各种用法和原理 一共用20多个文档 包含pl/sql语句的集合整理
Oracle学习笔记 以下是我这一周学习oracle整理的笔记,包括课堂的内容和自己看额外看的视频补充的一些内容,基本上囊括了所有oracle的基本知识。主要的形式是例子代码加代码解释加运行结果,我个人认为对于没有学习...
oracle数据库是目前主流的数据库之一,自己整理的学习文档,希望对你们有用
Oracle数据库基本操作、新手入门级指导、菜鸟级文档导入
oracle学习的经典资料,内含有北京邮电大学研究生oracle课程ppt讲解,还有oracle从入门到精通的电子书(PDF版),同时还包括有大神的oracle学习笔记。 在 Oracle 几年的学习中,, 做了很多的实验, 也遇到了很多的...
在 Oracle 几年的学习中,, 做了很多的实验, 也遇到了很多的问题,在这个过程中,积累了一些学习文档。 也更新到了 blog 上。 因为太多,不便于查阅。 根据自己对 Oracle 的理解,把这些 blog 进行了分类, 并进行...
个人在学习期间赠礼的一份文档,文档结构清晰
可以下载哈啊,都学习学习哈。其它的都不说了
在 Oracle 几年的学习中,, 做了很多的实验, 也遇到了很多的问题,在这个过程中,积累了一些学习文档。 也更新到了 blog 上。 因为太多,不便于查阅。 根据自己对 Oracle 的理解,把这些 blog 进行了分类, 并...
在 Oracle 几年的学习中,, 做了很多的实验, 也遇到了很多的问题,在这个过程中,积累了一些学习文档。 也更新到了 blog 上。 因为太多,不便于查阅。 根据自己对 Oracle 的理解,把这些 blog 进行了分类, 并进行...