文档详情

常见的数据库不能启动的恢复手册.pdf

发布:2019-03-24约7.39千字共6页下载文档
文本预览下载声明
美河学习在线 常见的数据库不能启动的原因: (蓝色字体为sqlplus 界面操作,红色为注释) 一、日志文件丢失或损坏 日志文件的恢复: 1、非归档模式 SQLstartup mount; SQLselect * from v$logfile; 如果日志文件丢失了,手工建上相应的日志文件放在原处 (新建一个文本文件,改为相应的日志名就可以了) SQLSelect * from v$log; 查看日志文件当前状态 SQLalter database clear logfile group N; (N为非当前状态组号,把所有非当前状态的日志进行恢复); (语句的作用是把该日志文件,清空为标准空日志文件) SQLrecover database until cancel; (恢复当前日志) SQLalter database open resetlogs; 如果是单个日志文件损坏 SQLstartup mount; SQLalter database clear logfile group N; SQLalter database open; 2、归档模式 与上面操作大致一样如果 如果alter database clear logfile group N 执行不成功 就改为:alter database clear unarchived logfile group N 特别要注意的:alter database open resetlogs; Resetlogs: 表示一个数据库逻辑生存期结束和一个数据库逻辑生存期的开始. 每次使用resetlogs 时,SCN 计数器不会被重置,oracle 会重置其它计数 器(如日志序列号),同时还会重置重做日志的内容. 如果当前日志文件损坏无法通过recover database until cancel 恢复 就用第三种方式处理。 3、当前日志文件损坏的处理办法: SQLstartup mount; SQLcreate pfile=’d:\orace_test\pfile.txt’ from spfile; (8i及以前版本直接找到参数文件复制一份就可以了) SQLshutdown immediate; 编辑生成的pfile,加入_allow_resetlogs_corruption=TRUE 美河学习在线 SQLstartup mount pfile=’d:\oracle_test\pfile.txt’; SQLalter database open resetlogs; 数据库被打开后,马上执行一个full export shutdown 数据库 重建库 import 并完成恢复 建议执行一下ANALYZE TABLE ...VALIDATE STRUCTURE CASCADE; 说明: 1、该恢复方法是没有办法之后的恢复方法,一般情况下建议不要采用, 因为该方法 可能导致数据库的不一致 2、该方法也丢失数据,未写入数据文件的已提交或未提交数据。 3、建议联机日志文件一定要实现镜相在不同的磁盘上,避免这种情况的 发生,因为 任何数据的丢失对于生产来说都是不容许的 二、密码文件的丢失与损坏 在一些特殊情况下会改变密码文件如:重建控制文件或密码文件被修改。 c:orapwd file=’home\database\PWDSID’ password=123 三、控制文件丢失或损坏 如果控制文件只丢失或损
显示全部
相似文档