数据库

本类阅读TOP10

·SQL语句导入导出大全
·SQL Server日期计算
·SQL语句导入导出大全
·SQL to Excel 的应用
·Oracle中password file的作用及说明
·MS SQLServer OLEDB分布式事务无法启动的一般解决方案
·sqlserver2000数据库置疑的解决方法
·一个比较实用的大数据量分页存储过程
·如何在正运行 SQL Server 7.0 的服务器之间传输登录和密码
·SQL中两台服务器间使用连接服务器

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
使用未写入文档参数"_ALLOW_RESETLOGS_CORRUPTION"进行崩溃恢复经典

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

       
什么情况可能使用该参数               
 有些时侯可能你的库处于非归档的模式下,而你的联机重做日志又currupted,你的数据文件不能         完成完全的恢复。而这时当你试图打开数据库时,oracle提示你用resetlogs选项,当你使用该选项        时oracle又不允许你使用该选项,总之你想打开数据库,可就是打不开。         

1、最好做一个物理的库的全备              

2、使用sqlplus 启动库至mount               
 sqlplus /nolog                      
 sql>connect internal                      
 sql>startup mount                      
3、确保所有的数据文件都处于"END BACKUP"状态                      
 sql>set pages 0 feedback off lines 132                      
 sql>spool alter_df.sql                      
 sql>SELECT 'alter database datafile '||file_name||' END BACKUP;' from v$datafile;                       
 sql>spool off                      
 sql>@alter_df.sql                      
4、试着打开数据库                      
 sql>alter database open;                      
 如数据库成功打开,余下的都不需要做了,到此为止                      
5、如果你在打开时被要求进行恢复,使用"UNTIL CANCEL"这种进行恢复,然后再发出ALTER DATABASE OPEN RESETLOGS这个命令                      
  sql>recover database until cancel;                      
  sql>alter database open resetlogs;                      
6、如果数据库仍不能打开,把库down掉                      
  sql>shutdown immediate                      
7、在init<sid>.ora中加入如下参数                      
   _allow_resetlogs_corruption=TRUE                      
8、执行如下语句                      
 sql>connect internal                      
 sql>startup mount                             
 sql>@alter_df.sql                      
 sql>alter database open                      
9、如在alter database open时仍旧报错,使用until cancel恢复                      
 sql>recover database until cancel;                       
 sql>alter database open resetlogs;                      
10、经过"9",数据库一定被打开了,数据库被打开后,马上执行一个full export                      
11、down掉库,去掉_all_resetlogs_corrupt参数                       
12、重建库                      
13、import并完成恢复                      
14、建议执行一下ANALYZE TABLE ...VALIDATE STRUCTURE CASCADE;                      
                      




相关文章

相关软件