环境说明 OS:Red Hat Enterprise Linux Server release 6.5 (Santiago)
数据库版本:SQL*Plus: Release 11.2.0.4.0 Production
背景介绍 测试使用的一套单机ADG,早上到单位之后打开主库并启动备库报错,从以下报错信息来看提示datafile 1需要介质恢复
SQL> startup ORACLE instance started. Total System Global Area 1027182592 bytes Fixed Size 2259680 bytes Variable Size 864027936 bytes Database Buffers 155189248 bytes Redo Buffers 5705728 bytes Database mounted. ORA-10458: standby database requires recovery ORA-01196: file 1 is inconsistent due to a failed media recovery session ORA-01110: data file 1: '/oradata/orcl/system01.dbf'
查看对应备库的alert日志信息发现如下报错:ORA-16016,归档27号文件没有传输到本节点
alter database open Beginning Standby Crash Recovery. Serial Media Recovery started Managed Standby Recovery starting Real Time Apply Media Recovery Log /oradata/arch/1_26_1086360874.dbf Media Recovery of Online Log [Thread=1, Seq=27] Recovery of Online Redo Log: Thread 1 Group 21 Seq 27 Reading mem 0 Mem# 0: /oradata/orcl/sr121.log Tue Mar 01 09:00:14 2022 Standby crash recovery failed to bring standby database to a consistent point because needed redo hasn't arrived yet. MRP: Wait timeout: thread 1 sequence# 27 Standby Crash Recovery aborted due to error 16016. Errors in file /u01/app/oracle/diag/rdbms/orcldg/orcl/trace/orcl_ora_5275.trc: ORA-16016: archived log for thread 1 sequence# 27 unavailable Recovery interrupted! Some recovered datafiles maybe left media fuzzy Media recovery may continue but open resetlogs may fail Completed Standby Crash Recovery. Errors in file /u01/app/oracle/diag/rdbms/orcldg/orcl/trace/orcl_ora_5275.trc: ORA-10458: standby database requires recovery ORA-01196: file 1 is inconsistent due to a failed media recovery session ORA-01110: data file 1: '/oradata/orcl/system01.dbf' ORA-10458 signalled during: alter database open... Tue Mar 01 09:02:48 2022
查看主库是否有27号归档日志,这里发现从27号归档开始就已经不传输到备库
[oracle@oracle11g arch]$ ls -lrt total 27688 -rw-r----- 1 oracle oinstall 21533184 Feb 28 22:18 1_27_1086360874.dbf -rw-r----- 1 oracle oinstall 66048 Feb 28 22:18 1_28_1086360874.dbf -rw-r----- 1 oracle oinstall 6461440 Mar 1 08:57 1_29_1086360874.dbf -rw-r----- 1 oracle oinstall 91648 Mar 1 08:57 1_30_1086360874.dbf -rw-r----- 1 oracle oinstall 86016 Mar 1 09:00 1_31_1086360874.dbf -rw-r----- 1 oracle oinstall 102400 Mar 1 09:03 1_32_1086360874.dbf
检查监听以及数据库配置是否正确,经检查所有的配置信息都没有问题,包括密码文件 问题解决处理 临时修改log_archive_dest_state_2参数为defer,并立即修改为enable
SQL> alter system set log_archive_dest_state_2=defer; System altered. SQL> alter system set log_archive_dest_state_2=enable; System altered.
查看主库alert日志信息
Tue Mar 01 09:02:51 2022 Starting background process SMCO Tue Mar 01 09:02:51 2022 SMCO started with pid=28, OS id=4349 Tue Mar 01 09:03:51 2022 ARC0: Standby redo logfile selected for thread 1 sequence 27 for destination LOG_ARCHIVE_DEST_2 Tue Mar 01 09:03:53 2022 Thread 1 advanced to log sequence 33 (LGWR switch) Current log# 3 seq# 33 mem# 0: /oradata/orcl/redo03.log Tue Mar 01 09:03:53 2022 Archived Log entry 44 added for thread 1 sequence 32 ID 0x603645aa dest 1: ARC0: Standby redo logfile selected for thread 1 sequence 32 for destination LOG_ARCHIVE_DEST_2 Tue Mar 01 09:03:53 2022 ****************************************************************** LGWR: Setting 'active' archival for destination LOG_ARCHIVE_DEST_2 ****************************************************************** LNS: Standby redo logfile selected for thread 1 sequence 33 for destination LOG_ARCHIVE_DEST_2 Tue Mar 01 09:05:07 2022 Using STANDBY_ARCHIVE_DEST parameter default value as /oradata/arch/ ALTER SYSTEM SET log_archive_dest_state_2='DEFER' SCOPE=BOTH; ALTER SYSTEM SET log_archive_dest_state_2='ENABLE' SCOPE=BOTH; Tue Mar 01 09:05:17 2022 Thread 1 advanced to log sequence 34 (LGWR switch) Current log# 1 seq# 34 mem# 0: /oradata/orcl/redo01.log Tue Mar 01 09:05:17 2022 Archived Log entry 46 added for thread 1 sequence 33 ID 0x603645aa dest 1: Tue Mar 01 09:05:17 2022 ****************************************************************** LGWR: Setting 'active' archival for destination LOG_ARCHIVE_DEST_2 ****************************************************************** LNS: Standby redo logfile selected for thread 1 sequence 34 for destination LOG_ARCHIVE_DEST_2
查看备库alert日志信息,从库alert日志信息中可以看到归档27号文件之后都已经传输到备库并且应用
Tue Mar 01 09:03:51 2022 RFS[1]: Assigned to RFS process 7916 RFS[1]: Opened log for thread 1 sequence 29 dbid 1614141610 branch 1086360874 Tue Mar 01 09:03:51 2022 RFS[2]: Assigned to RFS process 7918 RFS[2]: Opened log for thread 1 sequence 28 dbid 1614141610 branch 1086360874 Archived Log entry 17 added for thread 1 sequence 28 rlc 1086360874 ID 0x603645aa dest 2: RFS[2]: Opened log for thread 1 sequence 30 dbid 1614141610 branch 1086360874 Archived Log entry 18 added for thread 1 sequence 29 rlc 1086360874 ID 0x603645aa dest 2: Tue Mar 01 09:03:51 2022 RFS[3]: Assigned to RFS process 7920 RFS[3]: Selected log 21 for thread 1 sequence 27 dbid 1614141610 branch 1086360874 Archived Log entry 19 added for thread 1 sequence 30 rlc 1086360874 ID 0x603645aa dest 2: RFS[1]: Opened log for thread 1 sequence 31 dbid 1614141610 branch 1086360874 Archived Log entry 20 added for thread 1 sequence 31 rlc 1086360874 ID 0x603645aa dest 2: Tue Mar 01 09:03:51 2022 Archived Log entry 21 added for thread 1 sequence 27 ID 0x603645aa dest 1: RFS[3]: Selected log 21 for thread 1 sequence 32 dbid 1614141610 branch 1086360874 Tue Mar 01 09:03:53 2022 Archived Log entry 22 added for thread 1 sequence 32 ID 0x603645aa dest 1: Tue Mar 01 09:03:53 2022 Primary database is in MAXIMUM PERFORMANCE mode RFS[4]: Assigned to RFS process 8028 RFS[4]: Selected log 21 for thread 1 sequence 33 dbid 1614141610 branch 1086360874 Tue Mar 01 09:05:17 2022 Archived Log entry 23 added for thread 1 sequence 33 ID 0x603645aa dest 1: Tue Mar 01 09:05:17 2022 Primary database is in MAXIMUM PERFORMANCE mode RFS[5]: Assigned to RFS process 8508 RFS[5]: Selected log 21 for thread 1 sequence 34 dbid 1614141610 branch 1086360874
