博客
关于我
ORACLE11g 云上Data Guard环境备库down机恢复实战过程
阅读量:550 次
发布时间:2019-03-09

本文共 1664 字,大约阅读时间需要 5 分钟。

Oracle备库故障处理及恢复方法

故障现象

微软云上的Oracle备库意外发生故障,导致ping不通,各种监控报警接连上来。联系微软云后台工程师,告知问题可能出在存储设备上的文件损坏。系统启动检查发现,除非重启系统,否则无法正常启动到登录界面。


故障诊断

系统启动检查发现:

  • /dev/sdc1的superblock损坏,无法识别文件系统。
  • 备用数据库无法启动,报警信息显示文件不一致,数据恢复失败。

  • 故障处理措施

    1. 系统重启

    微软云团队根据建议,进入管理界面,关闭数据库服务并重启系统。3小时后,工程师反馈恢复完成,备库服务器正常启动。

    登录系统后发现:

    • 数据文件目录仍在原位置。
    • 启动数据库时,报错:
      SQL> startupORACLE instance started....ORA-10458: stadby database requires recoveryORA-01196: file 1 is inconsistent due to a failed media recovery session
    • 数据文件恢复失败,提示介质恢复失败。

    2. 启动归档传输

    为了确保数据恢复,启动归档传输:

    SQL> alter database recover managed standby database using current logfile disconnect from session;

    执行后确认完成:

    SQL>

    3. 实时观察日志应用

  • 主库查看:
  • # 主库查看归档日志是否已传输SQL> select sequence#,applied from v$archived_log order by sequence#;

    输出显示,归档日志已传输到备库,但还在应用中。

    1. 备库查看:
    2. # 备库查看回流进度SQL> select sequence#,applied from v$archived_log order by sequence#;

      输出显示,归档日志已完全传输,但正在进行应用。


      4. 检查日志应用进度

      通过检查v$dataguard_stats:

      SQL> set linesize 2000SQL> select name,value from v$dataguard_stats;

      输出显示:

      • transport lag: +00 00:00:00
      • apply lag: +02 01:23:55
      • apply finish time: +00 00:06:31.000
      • estimated startup time: 11

      日志应用仍在进行中。


      5. 结束归档恢复

      随着日志应用逐步完成,后台日志显示:

      Media Recovery Log /oracle/app/oracle/flash_recovery_area/archivelog1_16855_906253421.dbf...Recovery of Online Redo Log: Thread 1 Group 4 Seq 16856 (in transit)

      6. 启用数据库

      尝试打开数据库:

      SQL> alter database recover managed standby database cancel;
      SQL> alter database open;
      SQL> alter database recover managed standby database using current logfile disconnect;

      最终,验证数据库状态:

      SQL> select name,open_mode from v$database;

      输出:

      NAME  OPEN_MODEPOWERDES MOUNTED

      验证修复成果

    3. 数据文件完整性恢复。
    4. 极化传输完成,主备同向一致。

    5. 总结

      通过系统重启、启动归档传输以及实时日志观察,最终成功恢复了Oracle备库,主备数据库保持了数据的一致性和服务可用性。

    转载地址:http://nkjsz.baihongyu.com/

    你可能感兴趣的文章
    Python中提示:UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position
    查看>>
    python中数据类型存储_浅谈Python中的数据类型
    查看>>
    python中文件最重要的功能是什么-学 Python 都用来干嘛的?
    查看>>
    python中文版语言_高盛最新调查:Python超过汉语成为未来最重要技能,你准备学哪种编程语言?...
    查看>>
    Python中文问题SyntaxError
    查看>>
    Python中方括号和括号括起来的列表有什么区别?
    查看>>
    python中时间处理_Python中处理时间的几种方法小结
    查看>>
    Python中枚举串口(包括虚拟端口)的跨平台方法是什么?
    查看>>
    python中根号下a怎么写_python中根号怎么表示
    查看>>
    Python中正则表达式的巧妙使用
    查看>>
    Python中浮点数的二进制表示(位不是十六进制)
    查看>>
    Python中特殊函数和表达式 filter,map,reduce,lambda
    查看>>
    python中用socket检测端口_Python 用socket模块实现检测端口和检测web服务
    查看>>
    python中用于列表操作的plus和append有什么区别?
    查看>>
    python中用递归求和
    查看>>
    python中的@staticmethod
    查看>>
    python中的array函数作用_NumPy 数组使用大全
    查看>>
    python中的isinstance判断多个对象类型
    查看>>
    python中的keys、values、items
    查看>>
    Python中的lambda和apply结合使用
    查看>>