Oracle7.X 回滚表空间数据文件误删除措置举动措施

  来源:网海拾贝  




---- 一、 小序:

---- 回滚段是数据库的一局部,它记载数据库变卦的信息。使用这些信息完成数据库的读划一性及其恢复。若回滚段泛起阻碍,则数据库不克不及正常启动,招致数据库瘫痪,用户无法读写数据。若能将回滚段的阻碍扫除,则不会影响用户的理论数据。笔者比来在理论使命中碰着一个标题:用户将回滚段表空间(rbs)的数据库文件(rbs01.dbf)错误删除,致使使数据库无法正常运转,上面上笔者扫除该举动措施的措置步骤。

---- 二、 步骤:

---- 1、 起首改参数文件init.ora,使数据库能mount下去。

---- 在system表空间内有一个system回滚段,该回滚段上数据库所必需的,当数据库第一次竖马上,它就随之竖立,并随数据库的翻开而自动在线。我们凡是使用的回滚段是公用回滚段,而非system回滚段,若公用回滚段泛起阻碍,我们暂可用system回滚段替代,使数据库能mount下去。

svrmgrl >Shutdown abort
$    vi  $ORACLE_HOME/dbs/init< sid >.ora
    rollback_segments=(system)
    _corrupted_rollback_segments=(r01,r02,r03,r04)
svrmgrl >Startup mount

---- 2、 对数据库施行恢复,再将它翻开

---- 从数据库的控制文件中将回滚段表空间rbs的数据文件rbs01.dbf离线并去失。

svrmgrl >alter database datafile
‘##/##/rbs01.dbf’ offline drop;

---- 对数据库休止恢复。

svrmgrl >recover database using backup controlfile;

---- 此时屏幕上可以会泛起:

ORA_00280 Change #### for thread# is in sequence#
specify log:[< RET > for suggested|AUTO|from
logsource|cancel]

---- 您可以依据sequence#号找到您需求的在线日记文件,并将日记文件输入(包括全途径),查找在线日记文件时可以使用svrmgrl >select * from v$log; 此时完成数据库恢复。 再将数据库翻开。

svrmgrl >alter database open resetlogs;

---- 3、 重修新的回滚段

---- 将旧回滚段及回滚表空间删除。

svrmgrl >alter rollback_segment r01 offline drop;
svrmgrl >alter rollback_segment r02 offline drop;
svrmgrl >alter rollback_segment r03 offline drop;
svrmgrl >alter rollback_segment r04 offline drop;
svrmgrl >drop tablespace rbs including contents;

---- 重修新的回滚表空间及回滚段。

svrmgrl >connect internal
svrmgrl >create rollback segment ro tablespace system;
svrmgrl >alter rollback segment ro online;
svrmgrl >create tablespace rbs datafile
‘##/##/rbs01.dbf’ size ##k;
svrmgrl >create rollback segment r01 tablespace rbs;
svrmgrl >create rollback segment r02 tablespace rbs;
svrmgrl >create rollback segment r03 tablespace rbs;
svrmgrl >create rollback segment r04 tablespace rbs;
svrmgrl >alter rollback segment r01 online;
svrmgrl >alter rollback segment r02 online;
svrmgrl >alter rollback segment r03 online;
svrmgrl >alter rollback segment r04 online;

---- 4、 使用新建的回滚段启动数据库

svrmgrl >Shutdown abort
$  vi  $ORACLE_HOME/dbs/init< sid >.ora
    rollback_segments=(r01,r02,r03,r04)
    将参数_corrupted_rollback_segment去失
svrmgrl >Startup normal

---- 三、 完毕语:

---- 此阻碍的扫除是数据库在归档方法上实行的,笔者已在HP-UX 10.20及Solaris2.5两种体系平台上成功颠末。 




版权声明: 原创作品,应允转载,转载时请务必以超链接形式标明文章 原始来由 、作者信息和本声明。不然将追究轨则责任。

原文地址:https://www.cnblogs.com/zgqjymx/p/1975878.html