当存储Cache由于丢失时,我们应该如何处理,让数据库重新能够open起来呢?让我们听听,云和恩墨 ACE 李真旭分享的这篇案例。
最近某客户的一套核心数据库由于存储问题导致清掉Cache之后无法启动。首先我们来看看数据库在启动的时候报什么错误:
错误并不复杂。可以看到Oracle这里已经无法正常写Redo logfile了。
由于这套数据库是非归档,只有逻辑备份,因此即使恢复成功也面临数据丢失的可能性。
首先我在尝试进行恢复时,发现居然无法mount数据库,在mount过程中实例被直接终止了,感觉非常奇怪。也没有报非常明显的错误。mount过程出错,那么无疑是controlfile存在异常;由于没有controlfile备份,因此这里先手工重建控制文件,如下是脚本:
重建完毕后。其实这里我首先尝试了进行noresetlogs创建,但是发现报错: