当前位置: 代码迷 >> Oracle技术 >> 想模拟ORA-00316异常
  详细解决方案

想模拟ORA-00316异常

热度:127   发布时间:2016-04-24 08:08:28.0
想模拟ORA-00316错误。
想模拟 数据库归档/非归档模式下inactive redo异常 
如何损坏redo日志才行
想做测试。
删了 vi打开里面数据修改

启动的时候
都是提示
SQL> startup
ORACLE instance started.
 
Total System Global Area 1252663296 bytes
Fixed Size 2227944 bytes
Variable Size 704643352 bytes
Database Buffers 536870912 bytes
Redo Buffers 8921088 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
Process ID: 8117
Session ID: 191 Serial number: 3

如何才能启动的时候出现这个错误信息
SQL> startup mount
ORACLE instance started.
 
Total System Global Area  260046848 bytes
Fixed Size                  1266896 bytes
Variable Size              83888944 bytes
Database Buffers          167772160 bytes
Redo Buffers                7118848 bytes
Database mounted.
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-00316: log 2 of thread 1, type  in header is not log file
ORA-00312: online log 2 thread 1: '/u01/oracle/oradata/Orcl/redo02.log'

------解决方案--------------------
嘿嘿,做破坏试验。要模拟这个错误估计要修改文件头部,可以试试从别的版本的数据库中拷个redo过来,或者touch一个空文件。我没这么做个,只是个建议
试验过程可以开帖或博客里分享下
------解决方案--------------------
不用你说的那么麻烦修改文件头,直接dd掉,就能够实现该功能,或者把数据文件dd到redo里面
------解决方案--------------------

------解决方案--------------------
dd if=? of=?
------解决方案--------------------
这么说吧,你随便导出个数据文件,然后删了,数据库在重新启动时,就会报错。
  相关解决方案