首页数据库Oracle备库宕机启动的完美解决方案

Oracle备库宕机启动的完美解决方案

时间2024-02-28 14:25:03发布访客分类数据库浏览336
导读:收集整理的这篇文章主要介绍了Oracle备库宕机启动的完美解决方案,觉得挺不错的,现在分享给大家,也给大家做个参考。 简介ORA-10458: standby database requ...
收集整理的这篇文章主要介绍了Oracle备库宕机启动的完美解决方案,觉得挺不错的,现在分享给大家,也给大家做个参考。

简介

ORA-10458: standby database requires recovery

ORA-01196: 文件 1 由于介质恢复会话失败而不一致

ORA-01110: 数据文件 1: 'XXXXXXXXXXXXXXXXXX\XXXXX1.DBF'

一个项目做了oracle主从数据库同步,通过DataGuard实现,从库服务器宕机,再开机的时候,从库无法启动,报“ORA-01196: 文件 1 由于介质恢复会话失败而不一致”这个错误,具体日志信息如下:

ORA-10458: standby database requires recovery
ORA-01196: 文件 1 由于介质恢复会话失败而不一致
ORA-01110: 数据文件 1: 'XXXXXXXXXXXXXXXXXX\XXXXX1.DBF'

正常启动的顺序应该是先启动备库再启动主库。由于从库宕机导致有段时间日志未同步,主备不一致,从库无法启动。

参考资料

https://www.js-code.com/article/160838.htm

恢复前准备

备份主库

备份主库数据【/home/oracle/backup/20190506/】

mkdir /home/oracle/backup/20190506
 SQLplus / as Sysdba SQL>
     create directory data_dir as '/home/oracle/backup/20190506';
    
 expdp SYSTEM/密码@orcl schemas=用户名 dumpfile=bak20190506.dmp directory=data_dir LOGfile=bak20190506.log;
    

检查日志文件

恢复之前需要了解当前备库的数据库文件、日志文件,查看主备库是否一致【如不一致需要拷贝】。

SQL>
     set linesize 300SQL>
     col MEMBER for a60SQL>
     select tyPE,member From v$logfile;
    

检查数据库文件

SQL>
     select name from v$datafile;
    

备库恢复

关闭备库,并启动了实例,加载数据库,但是数据库没有打开。打开日志进程

shutdown immediatestartup mount;
    alter database recover managed standby database using current logfile disconnect from session;
    

主库操作

alter system swITch logfile;
    

强制日志切换,不一定就归档当前的重做日志文件(若自动归档打开,就归档前的重做日志,若自动归档没有打开,就不归档当前重做日志。)

alter system switch logfile;
    

多操作几次,操作之后,稍等一段时间,时间视网速而定,过一段时间后,在主库上查询一下同步情况:

select name,sequence#,Archived,applied from v$archived_log order by sequence#;
    

如果返回结果"APPLIED"都是“YES”或者只有最后一个是“NO”的话,说明全部归档日志全部已经归档完了
,此时到备库上上操作

启动备库

alter database recover managed standby database cancel;
    alter database open;
    alter database recover managed standby database using current logfile disconnect from session;
    

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。

您可能感兴趣的文章:
  • 详解Linux系统中Oracle数据库程序的启动和关闭方式
  • Oracle查询当前的crs/has自启动状态实例教程
  • Oracle数据库新装之后出现的监听程序无法正常启动和运行(Oracle-12514)问题
  • 三种启动Oracle方式的详细步骤

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Oracle备库宕机启动的完美解决方案
本文地址: https://pptw.com/jishu/631542.html
Oracle创建新undo表空间最佳实践(包含段检查) Linux虚拟机下安装Oracle 11G教程图文解说

游客 回复需填写必要信息