Oracle7.X回滚表空间数据文件误删除处理方法
2023-06-13 09:13:53 时间
正在看的ORACLE教程是:Oracle7.X回滚表空间数据文件误删除处理方法。----一、引言:
----回滚段是数据库的一部分,它记录数据库变更的信息。使用这些信息实现数据库的读一致性及其恢复。若回滚段出现故障,则数据库不能正常启动,导致数据库瘫痪,用户无法读写数据。若能将回滚段的故障排除,则不会影响用户的实际数据。笔者最近在实际工作中遇到一个问题:用户将回滚段表空间(rbs)的数据库文件(rbs01.dbf)错误删除,以致使数据库无法正常运行,下面上笔者排除该方法的处理步骤。
----二、步骤:
----1、首先改参数文件init.ora,使数据库能mount上来。
----在system表空间内有一个system回滚段,该回滚段上数据库所必须的,当数据库第一次建立时,它就随之建立,并随数据库的打开而自动在线。我们通常使用的回滚段是公用回滚段,而非system回滚段,若公用回滚段出现故障,我们暂可用system回滚段替代,使数据库能mount上来。
svrmgrl>Shutdownabort
$ vi $ORACLE_HOME/dbs/init<sid>.ora
rollback_segments=(system)
_corrupted_rollback_segments=(r01,r02,r03,r04)
svrmgrl>Startupmount
----2、对数据库实施恢复,再将它打开
----从数据库的控制文件中将回滚段表空间rbs的数据文件rbs01.dbf离线并去掉。
svrmgrl>alterdatabasedatafile
‘##/##/rbs01.dbf"offlinedrop;
----对数据库进行恢复。
svrmgrl>recoverdatabaseusingbackupcontrolfile;
----此时屏幕上可能会出现:
ORA_00280Change####forthread#isinsequence#
specifylog:[<RET>forsuggested|AUTO|from
logsource|cancel]
----您可以根据sequence#号找到您需要的在线日志文件,并将日志文件输入(包括全路径),查找在线日志文件时可以使用svrmgrl>select*fromv$log;此时完成数据库恢复。再将数据库打开。
svrmgrl>alterdatabaseopenresetlogs;
----3、重建新的回滚段
----将旧回滚段及回滚表空间删除。
svrmgrl>alterrollback_segmentr01offlinedrop;
svrmgrl>alterrollback_segmentr02offlinedrop;
svrmgrl>alterrollback_segmentr03offlinedrop;
svrmgrl>alterrollback_segmentr04offlinedrop;
svrmgrl>droptablespacerbsincludingcontents;
----重建新的回滚表空间及回滚段。
svrmgrl>connectinternal
svrmgrl>createrollbacksegmentrotablespacesystem;
svrmgrl>alterrollbacksegmentroonline;
svrmgrl>createtablespacerbsdatafile
‘##/##/rbs01.dbf"size##k;
svrmgrl>createrollbacksegmentr01tablespacerbs;
svrmgrl>createrollbacksegmentr02tablespacerbs;
svrmgrl>createrollbacksegmentr03tablespacerbs;
svrmgrl>createrollbacksegmentr04tablespacerbs;
svrmgrl>alterrollbacksegmentr01online;
svrmgrl>alterrollbacksegmentr02online;
svrmgrl>alterrollbacksegmentr03online;
svrmgrl>alterrollbacksegmentr04online;
----4、使用新建的回滚段启动数据库
svrmgrl>Shutdownabort
$ vi $ORACLE_HOME/dbs/init<sid>.ora
rollback_segments=(r01,r02,r03,r04)
将参数_corrupted_rollback_segment去掉
svrmgrl>Startupnormal
----三、结束语:
----此故障的排除是数据库在归档方式上执行的,笔者已在HP-UX10.20及Solaris2.5两种系统平台上成功通过。
----回滚段是数据库的一部分,它记录数据库变更的信息。使用这些信息实现数据库的读一致性及其恢复。若回滚段出现故障,则数据库不能正常启动,导致数据库瘫痪,用户无法读写数据。若能将回滚段的故障排除,则不会影响用户的实际数据。笔者最近在实际工作中遇到一个问题:用户将回滚段表空间(rbs)的数据库文件(rbs01.dbf)错误删除,以致使数据库无法正常运行,下面上笔者排除该方法的处理步骤。
----二、步骤:
----1、首先改参数文件init.ora,使数据库能mount上来。
----在system表空间内有一个system回滚段,该回滚段上数据库所必须的,当数据库第一次建立时,它就随之建立,并随数据库的打开而自动在线。我们通常使用的回滚段是公用回滚段,而非system回滚段,若公用回滚段出现故障,我们暂可用system回滚段替代,使数据库能mount上来。
svrmgrl>Shutdownabort
$ vi $ORACLE_HOME/dbs/init<sid>.ora
rollback_segments=(system)
_corrupted_rollback_segments=(r01,r02,r03,r04)
svrmgrl>Startupmount
----2、对数据库实施恢复,再将它打开
----从数据库的控制文件中将回滚段表空间rbs的数据文件rbs01.dbf离线并去掉。
svrmgrl>alterdatabasedatafile
‘##/##/rbs01.dbf"offlinedrop;
----对数据库进行恢复。
svrmgrl>recoverdatabaseusingbackupcontrolfile;
----此时屏幕上可能会出现:
ORA_00280Change####forthread#isinsequence#
specifylog:[<RET>forsuggested|AUTO|from
logsource|cancel]
----您可以根据sequence#号找到您需要的在线日志文件,并将日志文件输入(包括全路径),查找在线日志文件时可以使用svrmgrl>select*fromv$log;此时完成数据库恢复。再将数据库打开。
svrmgrl>alterdatabaseopenresetlogs;
----3、重建新的回滚段
----将旧回滚段及回滚表空间删除。
svrmgrl>alterrollback_segmentr01offlinedrop;
svrmgrl>alterrollback_segmentr02offlinedrop;
svrmgrl>alterrollback_segmentr03offlinedrop;
svrmgrl>alterrollback_segmentr04offlinedrop;
svrmgrl>droptablespacerbsincludingcontents;
----重建新的回滚表空间及回滚段。
svrmgrl>connectinternal
svrmgrl>createrollbacksegmentrotablespacesystem;
svrmgrl>alterrollbacksegmentroonline;
svrmgrl>createtablespacerbsdatafile
‘##/##/rbs01.dbf"size##k;
svrmgrl>createrollbacksegmentr01tablespacerbs;
svrmgrl>createrollbacksegmentr02tablespacerbs;
svrmgrl>createrollbacksegmentr03tablespacerbs;
svrmgrl>createrollbacksegmentr04tablespacerbs;
svrmgrl>alterrollbacksegmentr01online;
svrmgrl>alterrollbacksegmentr02online;
svrmgrl>alterrollbacksegmentr03online;
svrmgrl>alterrollbacksegmentr04online;
----4、使用新建的回滚段启动数据库
svrmgrl>Shutdownabort
$ vi $ORACLE_HOME/dbs/init<sid>.ora
rollback_segments=(r01,r02,r03,r04)
将参数_corrupted_rollback_segment去掉
svrmgrl>Startupnormal
----三、结束语:
----此故障的排除是数据库在归档方式上执行的,笔者已在HP-UX10.20及Solaris2.5两种系统平台上成功通过。
相关文章
- 使用PyPDF2模块处理PDF文件通用方法技巧
- java获取 /resources 目录资源文件的 6 种方法
- .swp文件的恢复方法
- dedecms 模板文件不存在 无法解析文档!问题定位方法!详解程序员
- 时处理办法Linux下解决无法修改文件的方法(linux无法修改文件)
- Linux系统下判断文件存在的方法(linux判断文件存在)
- 提升Linux文件压缩比例的方法(linux压缩比例)
- 2 种从 Linux 终端下载文件的方法
- 探索Linux查看文件内容的方法(linux查看文件的内容)
- Linux文件递归权限处理:简单方法与实用技巧(linux递归文件权限)
- 如何使用Linux进行文件重命名:简单易学的操作技巧(linux重命名文件)
- Linux将数据输出到文件中的实现方法(linux将输出到文件)
- Linux 文件管理:掌握以“结尾的文件的处理方法(linux以结尾的文件)
- 使用Oracle处理MDF文件的方法(MDF文件用oracle)
- Oracle数据库中处理DMP文件的方法(dmp文件与oracle)
- Oracle7.X回滚表空间数据文件误删除处理方法
- Asp.net在ashx文件中处理Session问题解决方法
- Thinkphp多文件上传实现方法
- javaweb中静态文件的常用处理方法汇总
- jquery通过load获取文件的内容并跳到锚点的方法