成功恢复无备份RAC环境数据库

简介:

昨天,一兄弟电话求助,有一套医院HIS数据库无法启动,RAC环境,无备份,尝试过重建控制文件操作,但失败。

远程连接后,情况如下:

1.两节点RAC,Oracle11.2.0.1版本,Linux操作系统
2.recover database时提示需使用backup controlfile
3.rman list backupset无输出

由于没有记录具体的操作,这里主要就碰到的异常做一下描述

1.重启数据库,在日志中发现另一节点没有被关闭,首先关闭另一节点

2.由于控制文件已被错误重建,并且,沟通后认为丢失一部分数据是可以接受的,因此,决定重新创建控制文件,在创建控制文件时,存在一个知识点:
RAC环境重建控制文件报错:

ORA-12720: operation requires database is in EXCLUSIVE mode

这里需要修改参数文件:

alter system set cluster_database=false scope=spfile;

3.重建控制文件后进行恢复操作
增加隐含参数:

alter system set "_allow_resetlogs_corruption"=true scope=spfile;

recover database using backup controlfile until cancel;
alter database open resetlogs;

报错

ORA-00600: internal error code, arguments:  [2662]

这个错误以前碰到过,需要使用event调整SCN
首先,再增加一个隐含参数:
alter system set "_allow_error_simulation"=true scope=spfile;
重启重建控制文件并恢复后

alter session set events '10015 trace name ADJUST_SCN level 10';
alter database open;

4.经过上一步操作,SCN已经OK了,但仍然报错
ORA-00600: internal error code, arguments: [4194]
4000开头的错误,改UNDO为手动管理模式,修改初始化参数
undo_management='MANUAL'

完成启动。

总结:
1.这个例子,其实最开始控制文件没有丢失,应该先尝试进行恢复,不知道之前是不是遇到了错误,导致选择了重建控制文件的方法。不过,这里应该指出的是,最好不要一上来就重建控制文件。
2.备份!备份!备份!

感觉恢复数据库,就像伤寒论里面说的,观其脉证,知犯何逆,随证治之。

本文转自ICT时空 dbasdk博客,原文链接: 成功恢复无备份RAC环境数据库 ,如需转载请自行联系原博主。

相关文章
|
9月前
|
数据可视化 BI API
无缝对接云数据库:自定义报表生成工具在混合云环境下的部署指南
自定义报表生成工具通过拖拽设计、多数据源整合及自动化输出,帮助业务人员零代码创建个性化报表,解决传统工具灵活性不足、技术门槛高的问题。文章对比其与传统报表差异,列举行业应用场景(如财务、零售),并给出选型建议与主流工具(如FineReport、Power BI、板栗看板)的优劣势分析。
327 0
|
12月前
|
存储 关系型数据库 MySQL
利用Cron表达式实现MySQL数据库的定时备份
以上就是如何使用Cron表达式和mysqldump命令实现MySQL数据库的定时备份。这种方法的优点是简单易用,而且可以根据需要定制备份的时间和频率。但是,它也有一些限制,例如,它不能备份MySQL服务器的配置文件和用户账户信息,也不能实现增量备份。如果需要更复杂的备份策略,可能需要使用专门的备份工具或服务。
331 15
|
12月前
|
Java 关系型数据库 MySQL
JDK、Tomcat、MariaDB数据库和Profile多环境的配置与使用
以上就是JDK、Tomcat、MariaDB数据库和Profile多环境的配置与使用的基本步骤。这些步骤可能会因为你的具体需求和环境而有所不同,但是基本的思路是一样的。希望这些信息能够帮助你更好地理解和使用这些工具。
363 17
|
关系型数据库 Shell 网络安全
定期备份数据库:基于 Shell 脚本的自动化方案
本篇文章分享一个简单的 Shell 脚本,用于定期备份 MySQL 数据库,并自动将备份传输到远程服务器,帮助防止数据丢失。
|
存储 关系型数据库 分布式数据库
PolarDB开源数据库进阶课5 在线备份
本文介绍了如何在PolarDB RAC一写多读集群中进行在线备份,特别针对共享存储模式。通过使用`polar_basebackup`工具,可以将实例的本地数据和共享数据备份到本地盘中。实验环境依赖于Docker容器中用loop设备模拟的共享存储。
398 1
|
数据库
【赵渝强老师】数据库的备份方式
备份数据库是指将数据库中的数据及相关信息保存起来,以便在系统故障时恢复。备份对象不仅限于数据本身,还包括数据库对象、用户权限等。根据备份策略、类型和模式的不同,可分为整体/部分备份、完全/增量备份、一致/非一致备份。文中还附有相关视频讲解。
255 0
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
892 3
|
监控 关系型数据库 MySQL
Linux环境下MySQL数据库自动定时备份策略
在Linux环境下,MySQL数据库的自动定时备份是确保数据安全和可靠性的重要措施。通过设置定时任务,我们可以每天自动执行数据库备份,从而减少人为错误和提高数据恢复的效率。本文将详细介绍如何在Linux下实现MySQL数据库的自动定时备份。
453 3
|
运维 Oracle 前端开发
Oracle 11g RAC集群日常运维命令总结
Oracle 11g RAC集群日常运维命令总结
695 2
下一篇
开通oss服务