Oracle RAC for aix 存储双控锁盘导致ASM控制文件损坏恢复实例

栏目: 数据库 · 发布时间: 5年前

故障场景:AIX IBM存储更换存储控制器电源模块导致存储双控同时掉电,存储双控恢复供电后发生锁盘,IBM解盘后 RAC数据库无法正常启动,启动报错:ORA-00600: internal error code, arguments: [2131], [33], [32], [], [], [], [], [], [], [], [], []

恢复方案确定:由于损坏的数据库数据量巨大,有30T之多,并且要求尽快打开数据库,可以接受丢失部分数据,  数据库有备份。商议之下,使用备份控制文件恢复数据库,进行数据库的不一致性恢复。

恢复过程:

1、从磁带库拉取控制文件备份集并恢复到Oracle RAC数据库ASM存储中 

--此时尝试启动数据库会遇到报错信息:

ORA-00600: internal error code, arguments: [3020], [718], [2828551], [3014338823], [], [], [], [], [], [], [], []

ORA-10567: Redo is inconsistent with data block (file# 718, block# 2828551, file offset is unknown bytes)

2、生成Oracle的pfile并加入如下三个参数

_allow_resetlogs_corruption=true #跳过redo崩溃,允许resetlogs开库

undo_management=manual  #将undo管理修改为手工管理

event="10513 trace name context forever,level 2" #开10513事件跳过一致性验证

*.cluster_database=false

--此时,尝试启动数据库会遇到报错信息:

ORA-00600: internal error code, arguments: [2662], [3735], [1979553782], [3735], [1979584838], [20971664], [], [], [], [], [], []

3、Oracle数据库使用备份控制文件恢复数据库后,需要推进控制文件的SCN

数据库当前的SCN= 3735.1979584838=(3735*4294967296)+1979584838=16043682435398

giga=16043682435398/1024/1024/1024=14941.843=14941

需要推进的新SCN=14942*1024*1024*1024=16043850334208

Oracle数据库10g控制文件推进可以在pfile中加入参数:_minimum_giga_scn;

ORACLE 11.2.0.4 SCN推进方法oradebug

本次数据库控制文件SCN推进步骤步骤

SQL> oradebug setmypid

Statement processed.

SQL> oradebug dumpvar sga kcsgscn_

kcslf kcsgscn_ [700000000019B70, 700000000019BA0) = 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 07000000 00019850

SQL> oradebug poke 0x700000000019B70 8 16043850334208

BEFORE: [700000000019B70, 700000000019B78) = 00000000 00000000

AFTER:  [700000000019B70, 700000000019B78) = 00000E97 80000000

SQL> oradebug dumpvar sga kcsgscn_

kcslf kcsgscn_ [700000000019B70, 700000000019BA0) = 00000E97 80000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 07000000 00019850

SQL>

--此时尝试启动数据库会遇到报错信息:

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

接下来ORA600[4193]的处理就是ORACLE rac的undo表空间的重建了,需要配合参数:undo_management 和_CORRUPTED_ROLLBACK_SEGMENTS。

4、处理完ORA600[4193]后,数据库能够启动并打开到open状态,此时最好进行全库备份,如果条件允许,  就重建数据库以逻辑的方式导出故障数据库导新环境。否则,后续的使用中会时不时遇到如下报错信息:

ORA600[6122]和ORA600[KDSGRP1],实质文件是索引逻辑坏块引起的,以drop和create重建相关的索引即可。

更多Oracle相关信息见 Oracle 专题页面 https://www.linuxidc.com/topicnews.aspx?tid=12

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址: https://www.linuxidc.com/Linux/2019-05/158851.htm


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Blog Design Solutions

Blog Design Solutions

Richard Rutter、Andy Budd、Simon Collison、Chris J Davis、Michael Heilemann、Phil Sherry、David Powers、John Oxton / friendsofED / 2006-2-16 / USD 39.99

Blogging has moved rapidly from being a craze to become a core feature of the Internetfrom individuals sharing their thoughts with the world via online diaries, through fans talking about their favori......一起来看看 《Blog Design Solutions》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

SHA 加密
SHA 加密

SHA 加密工具