97c19b0fa4cb5da39908fb53f4c51fff.gif

各位新朋友~记得先点蓝字关注我哦~

晚上小编收到紧急通知,客户的应用出现报错,导致生产停机,无法连接到数据库。以下是应用反馈的报错:

2b3c7c7666fe17b08f2346ea428b352b.png

看到这个报错,小编先猜测了一波可能数据库进程被关闭了,尝试连到数据库所在的windows服务器,重启oracle服务,打开日志发现重启失败,数据库无法被打开。

fa579130c853372de61ed2d2e2c3ec8a.png

根据日志的报错,猜测是系统文件损坏。为了寻找造成ststem01.dbf被破坏的原因,小编开始往上查看日志,这时候发现数据库在1点的时候被开启了热备。但是在之后8点52分数据库被重启,看来在1点跟9点之间,数据库被异常关闭了。

这时候小编想起来,数据库在热备模式下被关闭,是无法再重启的。

那就赶紧去检查一下数据文件的状态。

通过sql语句

97c51c53c39415ab15f8d40bc2def6ca.png

发现数据文件都是active状态,都处于热备模式。果然如此,既然找到了原因所在,那就可以对症下药了!

e5e7b2a8436e799ac2d70ebf1e732e23.png

这时候发现数据库就能起来了!

70b565fc2a9a324e664073500ce94f90.png

应用重新连上!

看来造成这次数据库宕机,业务停机的原因就是数据库在每天的凌晨1点钟会开启热备模式,进行备份。但是数据库或者服务器却被异常关闭了,导致数据库无法打开。

小编在这里建议,尽量不要采用脚本热备的方式,使用数据泵或者rman进行每日备份更为妥当。如果一定要开启热备模式,期间会产生大量redo日志,且务必热备完成后,关闭热备模式!

f9b62612416944f8153406281e2411a8.png41d6d5ade62a943ef97855d98728dc10.gif

美创运维中心数据库服务团队拥有Oracle ACE 1人、OCM 10余人、数十名Oracle OCP、MySQL OCP、红帽RHCA、中间件weblogic、tuxedo认证、达梦工程师 ,著有《Oracle DBA实战攻略》,《Oracle数据库性能优化方法和最佳实践》,《Oracle内核技术揭秘》等多本数据运维优化书籍。目前运维各类数据库合计2000余套,精通Oracle、MySQL、SQLServer、DB2、PostgreSQL、达梦等主流商业和开源数据库。并成为首批国内达梦战略合作伙伴之一,拥有海量经验和完善的人员培养体系。并同时提供超融合,私有云整体解决方案。

45dc4cabbd737ad76d8c93e55f929b17.png
Logo

一站式 AI 云服务平台

更多推荐