今天数据库的ADG硬件损坏,需要更换硬件,硬件工程师到达现场没有联系公司员工,直接停机进行硬件更换。
我们收到邮件报警后,立即打电话咨询情况。
当更换完硬件后,启动服务器器后,立刻检查数据库情况。
在启动数据库时,报如下错误。
ORA-10458: standby database requires recovery
ORA-01196: file 1 is inconsistent due to a failed media recovery session
ORA-01110: data file 1: '/ora/oradata/oraSTD/system01.dbf'
ORA-10458 signalled during: ALTER DATABASE OPEN...
Mon Aug 14 14:59:47 2023
=====================
报错原因是:
强制关机导致日志记录的SCN与控制文件不符,不能完成checkpoint事件,需要进行介质恢复。
======================
处理方案如下:
-
先启动数据库到mount
startup mount
-
进行日志恢复,因为刚刚换硬件停机了,有些日志没有传输到备机上
alter database recover managed standby database disconnect from session;
-
通过查看alter日志,直到日志中有 in transit出现。
Mon Aug 14 16:04:00 2023
Deleted Oracle managed file /orahome/app/oracle/fast_recovery_area/oraSTD/archivelog/2023_08_07/o1_mf_1_471025_lf0gsvyn_.arc
Mon Aug 14 16:04:00 2023
RFS[4]: Selected log 8 for thread 1 sequence 475035 dbid -1560748880 branch 832086000
Mon Aug 14 16:04:00 2023
Media Recovery Waiting for thread 1 sequence 475035 (in transit)
Recovery of Online Redo Log: Thread 1 Group 8 Seq 475035 Reading mem 0
Mem# 0: /ora/oradata/oraSTD/standby02.log
Archived Log entry 455418 added for thread 1 sequence 475034 ID 0xffffffffa746a045 dest 1:
-
取消日志恢复
alter database recover managed standby database cancel;
-
打开数据库,并开启实时应用
alter database open;
alter database recover managed standby database using current logfile disconnect from session;