如何解决数据库版本9i?
数据库版本9i,在非归档模式下日志文件损坏,造成数据库启不来,如何解决
归档模式下当前日志的损坏有两种情况, 一、是数据库是正常关闭,日志文件中没有未决的事务需要实例恢复,当前日志组的损坏就可以直接用alter database clear unarchived logfile group n来重建。 二、是日志组中有活动的事务,数据库需要媒体恢复,日志组需要用来同步,有两种补救办法 A。
最好的办法就是通过不完全恢复,可以保证数据库的一致性,但是这种办法要求在归档方式下,并且有可用的备份 B。 通过强制性恢复,但是可能导致数据库不一致。 下面分别用来说明这两种恢复方法 5。1。2。1 通过备份来恢复 1、打开数据库,会遇到一个类似的错误 ORA-00313: open failed for members of log group 1 of thread 1 ORA-00312: online log 1 thread 1: 'D:\ORACLE\ORADATA\TEST\REDO01。
LOG' ORA-27041: unable to open file OSD-04002: unable to open file O/S-Error: (OS 2) 系统找不到指定的文件 2、查看V$log,发现是当前日志 SQL> select group#,sequence#,archived,status from v$log; GROUP# SEQUENCE# ARCHIVED STATUS ---------- ---------- -------- ---------------- 1 1 NO CURRENT 2 2 YES INACTIVE 3 3 YES INACTIVE 3、发现clear不成功 SQL> alter database clear unarchived logfile group 1; alter database clear unarchived logfile group 1 * ERROR at line 1: ORA-01624: log 1 needed for crash recovery of thread 1 ORA-00312: online log 1 thread 1: 'D:\ORACLE\ORADATA\TEST\REDO01。
LOG' 4、拷贝有效的数据库的全备份,并不完全恢复数据库 可以采用获取最近的SCN的办法用until scn恢复或用until cnacel恢复 recover database until cancel 先选择auto,尽量恢复可以利用的归档日志,然后重新 recover database until cancel 这次输入cancel,完成不完全恢复,也就是说恢复两次。
如: SQL> recover database until cancel; Auto …… SQL> recover database until cancel; Cancel; 5、利用alter database open resetlogs打开数据库 说明: 1、这种办法恢复的数据库是一致的不完全恢复,会丢失当前联机日志中的事务数据 2、这种方法适合于归档数据库并且有可用的数据库全备份。
3、恢复成功之后,记得再做一次数据库的全备份。 4、建议联机日志文件一定要实现镜相在不同的磁盘上,避免这种情况的发生,因为任何数据的丢失对于生产来说都是不容许的。
方法1: 第一步: backup log database_name with no_log 或者 backup log database_name with truncate_only --no_log和truncate_only是在这里是同义的,随便执行哪一句都可以 第二步: 1。
收缩特定数据库的所有数据和日志文件,执行 dbcc shrinkdatabase (database_name,[,target_percent])--database_name是要收缩的数据库名称;target_percent是数据库收缩后的数据库文件中所要的剩余可用空间百分比 2。
收缩一次一个特定数据库中的数据或日志文件,执行 dbcc shrinkfile(file_id,[,target_size]) --file_id是要收缩的文件的标识 (ID) 号,若要获得文件 ID,请使用 FILE_ID 函数或在当前数据库中搜索 sysfiles;target_size是用兆字节表示的所要的文件大小(用整数表示)。
如果没有指定,dbcc shrinkfile 将文件大小减少到默认文件大小 两个dbcc都可以带上参数notruncate或truncateonly,具体意思看帮助。 (帮助别人,快乐自己, 如果我的回答对你有帮助就点击『好评』感谢你的支持 如果还不明白的话就追问我)。
答:当然有人会啦,我就会呀,我的聊天号是:303396252详情>>
答:不知道你是不是写错文件名了,pdf?详情>>
答:当电脑的全部组件(包括软件)我们国家都能生产的时候。详情>>