龙空技术网

记一次误删Oracle控制文件并恢复过程

波波说运维 1271

前言:

此时大家对“oracle存储过程无法删除”可能比较注意,小伙伴们都需要分析一些“oracle存储过程无法删除”的相关资讯。那么小编同时在网络上网罗了一些有关“oracle存储过程无法删除””的相关资讯,希望咱们能喜欢,你们快快来了解一下吧!

概述

当你在数据库运行时误删除了控制文件怎么办?很不幸有一次我就有这个情况,虽然是测试环境,这里因为我有事先把控制文件分别备份,所以恢复还是比较简单的。下面简单记录下怎么恢复。

问题

控制文件版本不一致一般是因为在实例运行时删除了控制文件,此时直接复制了其他控制文件过来,但数据库读写时实际上只写入一个控制文件,并没有写入复制过来的控制文件。这种情况会造成控制文件版本不一致。

解决过程:

1、关闭实例

SQL> shutdown abort

ORACLE instance shut down.

2、修改控制文件(oracle用户执行)

rm -rf /u01/app/oracle/oradata/orcl/control01.ctl

cp /u01/app/oracle/fast_recovery_area/orcl/control02.ctl /u01/app/oracle/oradata/orcl/control01.ctl

3、重启数据库

上面简单的记录了控制文件恢复过程,实际上也说明了控制文件多个地方备份的重要性,虽然可以重建控制文件来恢复,但是毕竟麻烦很多。

后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注一下~

标签: #oracle存储过程无法删除