Print

某局点iMC dbman备份成功恢复失败经验案例

2019-11-17 发表

组网及说明

不涉及

问题描述

dbman备份可以成功,但是使用该dbman备份数据直接恢复就失败,并且导致很多进程启动异常。

IMC版本0703、EIA E0604P01;

数据库ORACLE 11G R2 11.2.0 

操作系统:redhat7.4 


过程分析

1、手工进行本地数据备份,并在本地进行恢复数据。在执行至4/5时,报错数据备份失败,dbman_debug日志报错、监控代理平台各个进程状态依旧如下所示:



2、查看数据库监听器显示listener supports no services;数据库处于shutdown状态,执行startup命令之后,数据库才正常启动





3、数据库启动完毕之后,查看监听器状态,发现其状态恢复正常。此时通过监控代理将IMC停止,然后重新启动,发现IMC各个进程恢复正常,web界面登录IMC也一切正常。




4、问题复现时,多次执行lnsrctl service 查看监听器状态可发现,在故障前后,监听器从正常启动状态,变为关闭状态:

(1)故障前监听器状态如下:


(2)故障时监听器状态如下:



经分析可知,数据库备份失败是由于恢复数据库时,停止数据库后重新登录启动时携带了imcdb导致登录失败。


解决方法

手工静态配置监听器即可;

在listener.ora文件中添加以下内容 

 (listener.ora文件在root用户下oracle安装目录里,可执行find –name listener.ora查找)

SID_LIST_LISTENER =

(SID_LIST =

  (SID_DESC =

  (GLOBAL_DBNAME = orcl)

  (SID_NAME = orcl)

  (ORACLE_HOME = /u01/app/oracle/product/11.1.0/db_01)

  )

)

 添加完毕之后保存并重启oracle监听器即可。

重新执行数据备份现象如下 

 1.备份前监听器状态:

其中GLOBAL_DBNAME、SID_NAME均为数据库的实例ID,ORACLE_HOME按照实际安装路径填写



2.故障节点前后的监听器状态:



3.数据库备成功后,监听器状态: