dede分类信息网站,免费安全网站认证,wordpress付费建站,海南三亚注册公司需要什么条件由于丢失的当前的联机日志文件#xff0c;所以可能会丢失部分数据#xff0c;破坏数据库的完整性#xff0c;而且普通的重建日志文件的方式是不可行的#xff0c;这个时候我们需要借助隐含参数_ALLOW_READ_ONLY_CORRUPTION或者_ALLOW_RESETLOGS_CORRUPTION打开数据库。打开…由于丢失的当前的联机日志文件所以可能会丢失部分数据破坏数据库的完整性而且普通的重建日志文件的方式是不可行的这个时候我们需要借助隐含参数_ALLOW_READ_ONLY_CORRUPTION或者_ALLOW_RESETLOGS_CORRUPTION打开数据库。打开完数据库后立即用EXP/EXPDP导出数据然后重建数据库。如果有备份我们可以考虑借助备份恢复但是由于数据库处于非归档模式即使是备份也是数据库某一个时间点的快照所以会丢失从备份时间点到现在的数据。当然用隐含参数打开数据库会破坏数据库的完整性。SQL SELECT NAME,OPEN_MODE,LOG_MODE FROM V$DATABASE;NAME OPEN_MODE LOG_MODE--------- ---------- ------------TOMSYAN READ WRITE NOARCHIVELOGSQL SELECT GROUP#,SEQUENCE#,STATUS FROM V$LOG;GROUP# SEQUENCE# STATUS---------- ---------- ----------------1 106 INACTIVE2 104 INACTIVE3 107 CURRENTSQL SELECT MEMBER FROM V$LOGFILE WHERE GROUP#3;MEMBER--------------------------------------------------------------------------------C:\ORACLE\PRODUCT\10.2.0\ORADATA\TOMSYAN\REDO03.LOGSQL SHUTDOWN IMMEDIATE数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。SQL HOST DEL C:\ORACLE\PRODUCT\10.2.0\ORADATA\TOMSYAN\REDO03.LOGSQL STARTUPORACLE 例程已经启动。Total System Global Area 612368384 bytesFixed Size 1250428 bytesVariable Size 239078276 bytesDatabase Buffers 364904448 bytesRedo Buffers 7135232 bytes数据库装载完毕。ORA-00313: 无法打开日志组 3 (用于线程 1) 的成员ORA-00312: 联机日志 3 线程 1:C:\ORACLE\PRODUCT\10.2.0\ORADATA\TOMSYAN\REDO03.LOGSQL SELECT GROUP#,SEQUENCE#,STATUS FROM V$LOG;GROUP# SEQUENCE# STATUS---------- ---------- ----------------1 106 INACTIVE3 107 CURRENT2 104 INACTIVESQL ALTER DATABASE CLEAR LOGFILE GROUP 3;ALTER DATABASE CLEAR LOGFILE GROUP 3*第 1 行出现错误:ORA-00313: 无法打开日志组 3 (用于线程 1) 的成员ORA-00312: 联机日志 3 线程 1:C:\ORACLE\PRODUCT\10.2.0\ORADATA\TOMSYAN\REDO03.LOGORA-27041: 无法打开文件OSD-04002: 无法打开文件O/S-Error: (OS 2) 系统找不到指定的文件。即使日志文件存在如果日志文件损坏重建当前的日志文件也不可行。利用隐含参数_ALLOW_READ_ONLY_CORRUPTION打开数据库SQL ALTER SYSTEM SET _ALLOW_READ_ONLY_CORRUPTIONTRUE SCOPESPFILE;系统已更改。SQL SHUTDOWN IMMEDIATE;ORA-01109: 数据库未打开已经卸载数据库。ORACLE 例程已经关闭。SQL STARTUP MOUNTORACLE 例程已经启动。Total System Global Area 612368384 bytesFixed Size 1250428 bytesVariable Size 239078276 bytesDatabase Buffers 364904448 bytesRedo Buffers 7135232 bytes数据库装载完毕。SQL ALTER DATABASE OPEN READ ONLY;数据库已更改。SQL SELECT NAME,OPEN_MODE,LOG_MODE FROM V$DATABASE;NAME OPEN_MODE LOG_MODE--------- ---------- ------------TOMSYAN READ ONLY NOARCHIVELOG这种以只读方法打开的数据库并不会重建当前的日志文件优点不会对当前的数据文件造成破坏。赶紧导出数据库吧。利用隐含参数_ALLOW_RESETLOGS_CORRUPTION打开数据库SQL ALTER SYSTEM RESET _ALLOW_READ_ONLY_CORRUPTION SCOPESPFILE SID*;系统已更改。SQL ALTER SYSTEM SET _ALLOW_RESETLOGS_CORRUPTIONTRUE SCOPESPFILE;系统已更改。SQL SHUTDOWN IMMEDIATE数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。SQL STARTUP MOUNTORACLE 例程已经启动。Total System Global Area 612368384 bytesFixed Size 1250428 bytesVariable Size 239078276 bytesDatabase Buffers 364904448 bytesRedo Buffers 7135232 bytes数据库装载完毕。下面需要做一次 media recover 不要OPEN 或者直接OPEN RESETLOGS方式打开数据库。SQL RECOVER DATABASE UNTIL CANCEL;完成介质恢复。SQL ALTER DATABASE OPEN RESETLOGS;数据库已更改。如果 OPEN 方式打开数据库 会有下面的错误SQL ALTER DATABASE OPEN ;ALTER DATABASE OPEN*第 1 行出现错误:ORA-03113: 通信通道的文件结束如果 OPEN RESETLOGS 方式打开数据库 会有下面的错误SQL ALTER DATABASE OPEN RESETLOGS;ALTER DATABASE OPEN RESETLOGS*第 1 行出现错误:ORA-01139: RESETLOGS 选项仅在不完全数据库恢复后有效。通过这种方法打开数据库Oracle会重建日志文件。通过隐含参数打开数据库Oracle会跳过数据库的一致性检查对数据库造成一定的负面影响。这个时候我们应该立即导出数据重建个空数据库然后再导入以防数据库以后遇到麻烦。来自 “ ITPUB博客 ” 链接http://blog.itpub.net/15498/viewspace-2059540/如需转载请注明出处否则将追究法律责任。