ORA-10458、ORA-01196、ORA-01110异常处理
主备数据库版本:oracle 11.2.0.4
问题描述:主备库都开启的状态单独重启备库出现以下异常
SQL>启动
ORACLE 实例已启动。
系统全局总面积 3206836224 字节
固定大小 2257520 字节
可变大小 1811942800 字节
数据库缓冲区 1375731712 字节
重做缓冲区16904192字节
数据库已装入。
ORA-10458:备用数据库需要恢复
ORA-01196:由于介质恢复失败,文件 1 不一致
ORA-01110: 数据文件 1:'/u01/app/oracle/oradata/orcl151/system01.dbf'
查询资料,确认到异常原因为日志的scn与控制文件不一致,以下为处理步骤:
备库启动到mount状态:
SQL>立即关闭;
ORA-01109:数据库未打开
已卸除数据库。
ORACLE 实例关闭。
SQL>启动挂载;
ORACLE 实例已启动。
系统全局总面积 3206836224 字节
固定大小 2257520 字节
可变大小 1811942800字节
数据库缓冲区 1375731712 字节
重做缓冲区16904192字节
数据库已装入。
SQL>更改数据库,使用当前日志文件与会话断开连接来恢复受管备用数据库;
数据库已更改。
主库操作:
SQL>更改系统交换机日志文件;
系统已更改。
SQL>选择线程#,序列#,to_char(first_time,'yyyy-mm-ddhh24:mi:ss'),从v$archived_log应用,其中first_time>sysdate-1顺序为1,2;
...(此处省略)
THREAD# SEQUENCE#TO_CHAR(FIRST_TIME,'YYYY-MM-DDHH24:MI: APPLIED
---------- ---------- --------------------------------------------------------
1 138 2022-01-22 22:43:24 是
1 139 2022-01-22 22:43:51 没有
1 139 2022-01-22 22:43:51 是
1 140 2022-01-22 22:46:05 NO
1 140 2022-01-22 22:46:05 是
1 141 2022-01-22 22:46:41 没有
1 141 2022-01-22 22:46:41 是
1 142 2022-01-22 22:50:06 NO
1 142 2022-01-22 22:50:06 NO
已选择 42 行。
注意:待全部归档日志归档完成,在到备库操作。
说明:同一时间点APPLIED值一个为NO,一个为YES,才算正常。
此时备库操作:
SQL>更改数据库恢复托管备用数据库;
更改数据库 恢复 托管备用数据库
*
第 1 行出现错误:
ORA-00274: 非法恢复选项 CANCLE
确认主备库监听正常开启,然后tnsping测试互通性,发现备库tnsping不通主库,而主库能tnsping通备库.
查看主库防火墙,确认为开启状态,将其关闭后主备库通信无问题.
备库再次执行:
SQL>更改数据库恢复托管备用数据库取消;
数据库已更改。
SQL>更改数据库打开;
数据库已更改。
SQL>更改数据库,使用当前日志文件与会话断开连接来恢复受管备用数据库;
数据库已更改。
成功开启备库.