首页 数据库 mysql教程 1.4TBASM(RAC)磁盘损坏恢复小记

1.4TBASM(RAC)磁盘损坏恢复小记

Jun 07, 2016 pm 03:29 PM
rac 恢复 损坏 磁盘

这周折腾了2天的时间帮客户成功恢复了一套近1.4TB的10.2.0.5 RAC(ASM). 该库在3月4号直接crash了。 大家可以看到,该库在开始报错读取redo,controlfile报错,本质原因是DISKGROUP dismount了,信息如下: Tue Mar 04 18:09:59 CST 2014 Errors in file /home/o

这周折腾了2天的时间帮客户成功恢复了一套近1.4TB的10.2.0.5 RAC(ASM). 该库在3月4号直接crash了。

大家可以看到,该库在开始报错读取redo,controlfile报错,本质原因是DISKGROUP dismount了,信息如下:

Tue Mar 04 18:09:59 CST 2014 <code class="php plain">Errors in file /home/oraprod/10.2.0/db/admin/xxxx/bdump/xxxx_lgwr_15943.trc: <code class="php plain">ORA-00345: redo log write error block 68145 <code class="php functions">count <code class="php plain">5 <code class="php plain">ORA-00312: online log 6 thread 2: <code class="php string">'+DATA/xxxx/onlinelog/o2_t2_redo3.log' <code class="php plain">ORA-15078: ASM diskgroup was forcibly dismounted <code class="php plain">Tue Mar 04 18:09:59 CST 2014 <code class="php plain">SUCCESS: diskgroup DATA was dismounted <code class="php plain">SUCCESS: diskgroup DATA was dismounted <code class="php plain">Tue Mar 04 18:10:00 CST 2014 <code class="php plain">Errors in file /home/oraprod/10.2.0/db/admin/xxxx/bdump/xxxx_lmon_15892.trc: <code class="php plain">ORA-00202: control file: <code class="php string">'+DATA/xxxx/controlfile/o1_mf_4g1zr1yo_.ctl' <code class="php plain">ORA-15078: ASM diskgroup was forcibly dismounted <code class="php plain">Tue Mar 04 18:10:00 CST 2014 <code class="php plain">KCF: write/open error block=0x1f41e online=1 <code class="php spaces"><code class="php plain">file=31 +DATA/xxxx/datafile/apps_ts_queues.310.692585175 <code class="php spaces"><code class="php plain">error=15078 txt: <code class="php string">'' <code class="php plain">Tue Mar 04 18:10:00 CST 2014 <code class="php plain">KCF: write/open error block=0x47d5d online=1 <code class="php spaces"><code class="php plain">file=51 +DATA/xxx/datafile/apps_ts_tx_data.353.692593409 <code class="php spaces"><code class="php plain">error=15078 txt: <code class="php string">'' <code class="php plain">Tue Mar 04 18:10:00 CST 2014 <code class="php plain">Errors in file /home/oraprod/10.2.0/db/admin/xxxx/bdump/xxxx_dbw2_15939.trc: <code class="php plain">ORA-00202: control file: <code class="php string">'+DATA/prod/controlfile/o1_mf_4g1zr1yo_.ctl' <code class="php plain">ORA-15078: ASM diskgroup was forcibly dismounted <code class="php plain">Tue Mar 04 18:10:00 CST 2014 <code class="php plain">KCF: write/open error block=0x47d5b online=1 <code class="php spaces"><code class="php plain">file=51 +DATA/prod/datafile/apps_ts_tx_data.353.692593409 <code class="php spaces"><code class="php plain">error=15078 txt: <code class="php string">'' <code class="php plain">Tue Mar 04 18:10:00 CST 2014 <p>数据库实例挂了之后,我们来看下ASM实例的alert log信息,如下:</p> <code class="php plain">Tue Mar 04 18:10:04 CST 2014 <code class="php plain">NOTE: SMON starting instance recovery <code class="php keyword">for <code class="php plain">group 1 (mounted) <code class="php plain">Tue Mar 04 18:10:04 CST 2014 <code class="php plain">WARNING: IO Failed. au:0 diskname:/dev/raw/raw5 <code class="php spaces"><code class="php plain">rq:0x200000000207b518 buffer:0x200000000235c600 au_offset(bytes):0 iosz:4096 operation:0 <code class="php spaces"><code class="php plain">status:2 <code class="php plain">WARNING: IO Failed. au:0 diskname:/dev/raw/raw5 <code class="php spaces"><code class="php plain">rq:0x200000000207b518 buffer:0x200000000235c600 au_offset(bytes):0 iosz:4096 operation:0 <code class="php spaces"><code class="php plain">status:2 <code class="php plain">NOTE: F1X0 found on disk 0 fcn 0.160230519 <code class="php plain">WARNING: IO Failed. au:33 diskname:/dev/raw/raw5 <code class="php spaces"><code class="php plain">rq:0x60000000002d64f0 buffer:0x400405df000 au_offset(bytes):0 iosz:4096 operation:0 <code class="php spaces"><code class="php plain">status:2 <code class="php plain">WARNING: cache failed to read gn 1 fn 3 blk 10752 <code class="php functions">count <code class="php plain">1 from disk 2 <code class="php plain">ERROR: cache failed to read fn=3 blk=10752 from disk(s): 2 <code class="php plain">ORA-15081: failed to submit an I/O operation to a disk <code class="php plain">NOTE: cache initiating offline of disk 2 group 1 <code class="php plain">WARNING: process 12863 initiating offline of disk 2.2526420198 (DATA_0002) with mask 0x3 in group 1 <code class="php plain">NOTE: PST update: grp = 1, dsk = 2, mode = 0x6 <code class="php plain">Tue Mar 04 18:10:04 CST 2014 <code class="php plain">ERROR: too many offline disks in PST (grp 1) <code class="php plain">Tue Mar 04 18:10:04 CST 2014 <code class="php plain">ERROR: PST-initiated MANDATORY DISMOUNT of group DATA <code class="php plain">Tue Mar 04 18:10:04 CST 2014 <code class="php plain">WARNING: Disk 2 in group 1 in mode: 0x7,state: 0x2 was taken offline <code class="php plain">Tue Mar 04 18:10:05 CST 2014 <code class="php plain">NOTE: halting all I/Os to diskgroup DATA <code class="php plain">NOTE: active pin found: 0x0x40045bb0fd0 <code class="php plain">Tue Mar 04 18:10:05 CST 2014 <code class="php plain">Abort recovery <code class="php keyword">for <code class="php plain">domain 1 <code class="php plain">Tue Mar 04 18:10:05 CST 2014 <code class="php plain">NOTE: cache dismounting group 1/0xD916EC16 (DATA) <code class="php plain">Tue Mar 04 18:10:06 CST 2014 <p>大家可以看到,ASM报了一个ORA-15081错误,在该错误之前是报对其中一个盘/dev/raw/raw5的IO操作错误。<br> 细心的朋友可以看到,这里由于IO 操作异常后,该disk被offline了。最后磁盘组无法mount。</p> <p>我们测试使用kfed read无法读取该disk,dd也无法操作。但是却可以直接dd 该disk对应的物理盘。</p> <p>磁盘组无法mount,从其中trace来看显然是磁盘头损坏,如下:</p> <code class="php plain">WARNING: cache read a corrupted block gn=1 dsk=2 blk=1 from disk 2 <code class="php plain">OSM metadata block dump: <code class="php plain">kfbh.endian: 0 ; 0x000: 0x00 <code class="php plain">kfbh.hard: 0 ; 0x001: 0x00 <code class="php plain">kfbh.type: 0 ; 0x002: KFBTYP_INVALID <code class="php plain">kfbh.datfmt: 0 ; 0x003: 0x00 <code class="php plain">kfbh.block.blk: 0 ; 0x004: T=0 NUMB=0x0 <code class="php plain">kfbh.block.obj: 0 ; 0x008: TYPE=0x0 NUMB=0x0 <code class="php plain">kfbh.check: 0 ; 0x00c: 0x00000000 <code class="php plain">kfbh.fcn.base: 0 ; 0x010: 0x00000000 <code class="php plain">kfbh.fcn.wrap: 0 ; 0x014: 0x00000000 <code class="php plain">kfbh.spare1: 0 ; 0x018: 0x00000000 <code class="php plain">kfbh.spare2: 0 ; 0x01c: 0x00000000 <code class="php spaces"><code class="php plain">CE: (0x0x400417ee4e0) group=1 (DATA) obj=2 (disk) blk=1 <code class="php spaces"><code class="php plain">hashFlags=0x0002 lid=0x0002 lruFlags=0x0000 bastCount=1 <code class="php spaces"><code class="php plain">redundancy=0x11 fileExtent=-2147483648 AUindex=0 blockIndex=1 <code class="php spaces"><code class="php functions">copy <code class="php plain">#0: disk=2 au=0 <code class="php spaces"><code class="php plain">BH: (0x0x40041795000) bnum=4586 type=reading state=reading chgSt=not modifying <code class="php spaces"><code class="php plain">flags=0x00000000 pinmode=excl lockmode=share bf=0x0x40041400000 <code class="php spaces"><code class="php plain">kfbh_kfcbh.fcn_kfbh = 0.0 lowAba=655.8572 highAba=0.0 <code class="php spaces"><code class="php plain">last kfcbInitSlot <code class="php keyword">return <code class="php plain">code=null cpkt lnk is null <p>大家知道Oracle ASM 10.2.0.5版本开始会对ASM disk header 进行自动备份,如果如果仅仅是盘头<br> 损坏那么恢复是很easy的。但是其实并不是这么简单,通过dd判断,该盘的前面几个block其实被损坏。</p> <p>最后我们通过ODU 直接将数据文件从磁盘拷贝到文件系统,然后起库,最后完成整个恢复过程。</p> <p>备注:在恢复过程中,发现ODU无法直接拷贝test201402.dbf 这样的文件,然而通过检查</p> <p>asm alias directory发现,其实是完好的,这里可能odu处理还有点小问题,我们通过手工将该元数据</p> <p>的AU 读取出来,然后匹配将剩下的文件全部抽取出来了,包括redo,controlfile,直接顺利打开数据库。</p> <p>不得不说,熊哥的ODU太强大了,秒杀各种Oracle ASM的数据库恢复Case!</p> <p> </p>
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1662
14
CakePHP 教程
1419
52
Laravel 教程
1311
25
PHP教程
1261
29
C# 教程
1234
24
微信文件过期怎么恢复 微信的过期文件能恢复吗 微信文件过期怎么恢复 微信的过期文件能恢复吗 Feb 22, 2024 pm 02:46 PM

打开微信,在我中选择设置,选择通用后选择存储空间,在存储空间选择管理,选择要恢复文件的对话选择感叹号图标。教程适用型号:iPhone13系统:iOS15.3版本:微信8.0.24解析1首先打开微信,在我的页面中点击设置选项。2接着在设置页面中找到并点击通用选项。3然后在通用页面中点击存储空间。4接下来在存储空间页面中点击管理。5最后选择要恢复文件的对话,点击右侧的感叹号图标。补充:微信文件一般几天过期1要是微信接收的文件并没有点开过的情况下,那在七十二钟头之后微信系统会清除掉,要是己经查看了微信

如何恢复无痕模式下的浏览记录 如何恢复无痕模式下的浏览记录 Feb 19, 2024 pm 04:22 PM

无痕浏览是一种非常方便的浏览方式,可以在使用电脑或移动设备上网时保护个人隐私。无痕浏览模式通常会阻止浏览器记录访问历史、保存Cookie和缓存文件,以及防止正在浏览的网站在浏览器中留下任何痕迹。但是,对于一些特殊的情况,我们可能需要恢复无痕浏览的浏览记录。首先,我们需要明确一点:无痕浏览模式的目的是保护隐私,防止他人从浏览器中获取用户的上网记录。因此,无痕浏

将VirtualBox固定磁盘转换为动态磁盘,反之亦然 将VirtualBox固定磁盘转换为动态磁盘,反之亦然 Mar 25, 2024 am 09:36 AM

在创建虚拟机时,系统会要求您选择磁盘类型,您可以选择固定磁盘或动态磁盘。如果您选择了固定磁盘,后来意识到需要动态磁盘,或者相反,该怎么办?好!你可以把一种转换成另一种。在这篇文章中,我们将看到如何将VirtualBox固定磁盘转换为动态磁盘,反之亦然。动态磁盘是一种虚拟硬盘,它最初具有较小的大小,随着您在虚拟机中存储数据,其大小会相应增长。动态磁盘在节省存储空间方面非常高效,因为它们只占用所需的主机存储空间。然而,随着磁盘容量的扩展,可能会稍微影响计算机的性能。固定磁盘和动态磁盘是虚拟机中常用的

抖音怎么恢复聊天火花 抖音怎么恢复聊天火花 Mar 16, 2024 pm 01:25 PM

在抖音这个充满创意与活力的短视频平台上,我们不仅可以欣赏到各种精彩内容,还能与志同道合的朋友展开深入的交流。其中,聊天火花作为衡量双方互动热度的重要指标,常常在不经意间点燃我们与好友之间的情感纽带。然而,有时由于一些原因,聊天火花可能会断开,那么如果我们想要恢复聊天火花究竟该如何操作呢,这篇教程攻略就将为大家带来详细的内容攻略介绍,希望能帮助到大家。抖音聊天火花断了怎么恢复?1、打开抖音的消息页面,选择好友聊天。2、互发消息聊天。3、连续发消息3天,就可以获得火花标识。在3天基础上,互发图片或视

小米云相册怎么恢复到本地 小米云相册怎么恢复到本地 Feb 24, 2024 pm 03:28 PM

小米云相册怎么恢复到本地?小米云相册APP中是可以恢复到本地,但是多数的小伙伴不知道小米云相册如何恢复到本地中,接下来就是小编为用户带来的小米云相册恢复到本地方法图文教程,感兴趣的用户快来一起看看吧!小米云相册怎么恢复到本地1、首先打开小米手机中的设置功能,主界面选择【个人头像】;2、然后进入到小米账号的界面,点击【云服务】功能;3、接着跳转到小米云服务的功能,选择其中的【云备份】;4、最后在如下图所示的界面,点击【云相册】即可恢复相册到本地。

win10怎么恢复默认壁纸 win10怎么恢复默认壁纸 Feb 10, 2024 pm 10:51 PM

Windows10的2019年5月更新具有新的、更亮的默认桌面背景。它看起来很棒-带有新的浅色主题。如果您使用Windows10的深色主题,您可能需要更深的背景。奇怪的是,Windows10的原始桌面背景已从最新版本的Windows10中删除。您必须从Web下载它或从旧的Windows10PC复制其文件。尽管我们无法在Microsoft的官方网站上找到此壁纸图片,但您可以从其他来源下载它。我们在Imgur上找到了一份4K分辨率的Windows10原始桌面壁纸的副本。此外,还有其他尺寸和更多默认壁

掌握Ubuntu系统中的磁盘使用情况的方法 掌握Ubuntu系统中的磁盘使用情况的方法 Jan 03, 2024 pm 11:13 PM

我们在系统要查看硬盘使用的情况,Ubuntu系统该怎么查看呢?下面我们就来看看,Ubuntu系统查看硬盘占用率的教程。1、在系统上,点击桌面左下角,如图示。2、在系统,点击公用程式,如图示。3、点击磁碟使用量,如图示。4、那么即可看到磁盘使用的情况,就是中间的磁盘就是你电脑硬盘,如图示。磁盘下面的小字就是使用情况。5、或点击公用程式上的磁碟,如图示。6、那么在容量这里,看得到硬盘使用情况,如图示。下面是文字版本查看磁盘的使用情况:df-h结果如下:FilesystemSizeUsedAvailU

如何在VirtualBox中增加磁盘大小[指南] 如何在VirtualBox中增加磁盘大小[指南] Mar 17, 2024 am 10:10 AM

我们经常遇到预定义磁盘大小没有空间容纳更多数据的情况?如果您在稍后阶段需要更多的虚拟机硬盘空间,则必须扩展虚拟硬盘和分区。在这篇文章中,我们将看到如何在VirtualBox中增加磁盘大小。增加VirtualBox中的磁盘大小重要的是要注意,您可能希望在执行这些操作之前备份您的虚拟硬盘文件,因为总是有可能出错。有备份总是一个好的做法。然而,该过程通常运行良好,请确保在继续之前关闭您的机器。有两种方法可以增加VirtualBox中的磁盘大小。使用图形用户界面扩展VirtualBox的磁盘大小使用CL

See all articles