您当前位置:优侠库 > 资讯攻略 >
来源:未知
2020-05-05 13:53:07 浏览: 分类:资讯攻略

技巧: Oracle数据库Redo故障恢复

I .丢失的非活动日志文件组的恢复:

因为非活动日志文件组表示检查点已完成(脏数据已写入数据文件)。数据库本身不会丢失。如果此时相应的重做丢失/损坏,可以通过清除重建日志文件组进行恢复。

传递命令:

alter database清除日志文件组n

如果数据库模式已存档,则需要强制清除它。

alter database清除未存档的日志文件组n

二。恢复丢失的活动或当前日志文件组:

有两种类型的损失:

一种是正常关闭数据库(比如立即关闭)

另一种是非正常关闭数据库(比如关机中止)。

1.当当前日志丢失时,数据库通常会关闭。

因为shutdown immediate执行全面的检查点,所以无需重做即可恢复当前日志。

在oracle 8i中,我们可以通过alter database clear log file group n完全恢复.

但是,在Oracle 9i中,您可能无法清除当前的重做日志,该日志需要通过recover database恢复,直到取消(必须)。

使用resetlogs选项打开。

例如:

alterdatabaseclearlogfilegroupn
recoverdatabaseuntilcancel;
alterdatabaseopenresetlogs;

2.当当前日志丢失时,数据库异常关闭:

在这种情况下,由于数据库在执行全面检查点之前关闭,Oracle必须在实例恢复时要求当前日志,否则Oracle数据库将不会打开。

在这种情况下,我们通常需要从备份中恢复数据文件,并通过应用归档日志进行正向推导。直到最后一个好的日志文件,然后就可以通过resetlogs启动数据库来完成恢复。那么丢失的数据就是损坏的日志文件中的数据。

注意:_allow_resetlogs_corruption是Oracle中的一个隐式参数。如果系统不能在resetlogs模式下打开,这是打开数据库的唯一方法。相应地在pfile中设置它。该功能的意义在于,如果一致性被破坏,允许强制重置日志并打开数据库。_allow_resetlogs_corruption将使用所有数据文件中最旧的SCN来打开数据库,因此通常需要确保系统表空之间存在最旧的SCN。强行打开数据库后,可能会因为各种原因出现ora-600。

关键词:Oracle,数据库,故障恢复

优侠库网站每天提供最新最热门的安卓手机软件、游戏下载、分享热门手游资讯攻略教程、手机软件教程步骤,专注安卓手机游戏软件下载。

本文链接:http://www.123down.cn/gonglue/227342.html

攻略资讯
安卓软件