生产数据库居然可以断电, 加ups了
解决方案 »
- 求大牛们来帮帮忙!测试after触发器的时候出错oracle触发器行级的问题!!!万分感谢
- oracle 没有dba权限,如何杀掉死锁的进程。
- 关于连接的问题!
- 怎么实现oracle和jdbc中rowid格式的转化
- 存储过程动态拼接sql过长,报ora-00604,ora-01003 如何解决
- 初级问题,把Varchar2 转换为Char?
- 数据库冷备份问题(oracle9i for win2000)谢谢!
- 讨厌的协议适配器错误:ORA-12535: TNS
- 为什么oracle数据库在cluster上无法连通,怎么解决?
- ORACLE 沒有自動COMMIT?
- 恢复备份出现的问题,谢谢.
- 库oracle已经建好了 可拿着给的pb的客户端和服务器端不知怎么调试主要是服务器端
另外,我是想知道理论上会不会有此种情况发生。
DBW0和LGWR是两个相互独立的Oracle后台进程,
LGWR发生的条件:1)提交 2)重做日志缓冲区1/3满 3)重做日志超过1M 4)在DBW0之前
DBW0发生的条件:1)脏缓冲区多 2)空闲冲区少 3)超时(3秒) 4)发生检查点(CKPT)
楼主提到的情况,数据确实没有写到数据文件中(没有发生DBW0),但是已经发生了LGWR(已经执行commit),此时发生断电,当重新启动历程后,由SMON后台进程负责执行自动恢复:
首先系统回进行一个前滚(Roll Forward),根据重做日志将已提交和未提交的数据全部写入。然后再执行一个回滚(Roll Back),整个过程的执行要用到回退段(RollBack Segment)的信息。经过这样的操作,1万元是不会白取的!!
2.回滚段也受redo log保护