<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>惜分飞 &#187; 删除分区asm恢复</title>
	<atom:link href="https://www.xifenfei.com/tag/%e5%88%a0%e9%99%a4%e5%88%86%e5%8c%baasm%e6%81%a2%e5%a4%8d/feed" rel="self" type="application/rss+xml" />
	<link>https://www.xifenfei.com</link>
	<description>提供7*24专业数据库(Oracle,SQL Server,MySQL,PostgreSQL等)恢复和技术支持@Tel:17813235971</description>
	<lastBuildDate>Wed, 28 Oct 2026 00:37:06 +0000</lastBuildDate>
	<language>zh-CN</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	
	<item>
		<title>删除分区 oracle asm disk 恢复</title>
		<link>https://www.xifenfei.com/2021/07/asm-disk-rm-parted-recovery.html</link>
		<comments>https://www.xifenfei.com/2021/07/asm-disk-rm-parted-recovery.html#comments</comments>
		<pubDate>Sun, 04 Jul 2021 08:15:38 +0000</pubDate>
		<dc:creator><![CDATA[惜分飞]]></dc:creator>
				<category><![CDATA[非常规恢复]]></category>
		<category><![CDATA[asm disk删除分区恢复]]></category>
		<category><![CDATA[asm 恢复]]></category>
		<category><![CDATA[删除分区asm恢复]]></category>
		<category><![CDATA[删除分区恢复]]></category>

		<guid isPermaLink="false">https://www.xifenfei.com/?p=9355</guid>
		<description><![CDATA[联系：手机/微信(+86 17813235971) QQ(107644445)  &#8230; <a href="https://www.xifenfei.com/2021/07/asm-disk-rm-parted-recovery.html">继续阅读 <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<div id="xifenfeicopyright">
<p>联系：<a href="https://www.xifenfei.com/about_xifenfei" target="_blank">手机/微信(+86 17813235971)   QQ(107644445)</a><a target="_blank" href="http://wpa.qq.com/msgrd?v=3&#038;uin=107644445&#038;site=qq&#038;menu=yes"><img src="https://www.xifenfei.com/wp-content/themes/img/site_qq.jpg" alt="QQ咨询惜分飞" title="QQ咨询惜分飞"/></a></p>
<p>标题：<a href="https://www.xifenfei.com/2021/07/asm-disk-rm-parted-recovery.html" target="_blank">删除分区 oracle asm disk 恢复</a></p>
<p>作者：<a href="https://www.xifenfei.com" target="_blank">惜分飞</a>©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]</p>
</div>
<p>接到一个朋友数据库故障请求case.大概操作是这样的:有一个39T的lun,通过parted分了15个分区,给oracle asm使用创建磁盘组data4,然后分了4个分区做成data5(由于ausize写错误了),删除掉磁盘组和这四个分区.然后重新分配了6个分区,并且使用最后5个分区创建了data5磁盘组.使用了一段时间之后,由于oracle空间不足,检查的时候误以为这个lun就前面15个分区使用,人工把后面的6个分区给删除了,并且创建了4个新分区,然后发现数据库crash了,发现误删除了在使用的分区.然后又把新创建的4个分区给删除了.接手该故障的时候,这个39T lun的分区信息如下</p>
<pre class="brush: bash; title: ; notranslate">
[root@node1 linux64]# parted /dev/mapper/36000d31003d39e000000000000000004
GNU Parted 2.1
Using /dev/mapper/36000d31003d39e000000000000000004
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print                                                            
Model: Linux device-mapper (multipath) (dm)
Disk /dev/mapper/36000d31003d39e000000000000000004: 39.6TB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start   End     Size    File system  Name         Flags
 1      2097kB  2000GB  2000GB               asmdata4-1
 2      2000GB  4000GB  2000GB               asmdata4-2
 3      4000GB  6000GB  2000GB               asmdata4-3
 4      6000GB  8000GB  2000GB               asmdata4-4
 5      8000GB  10.0TB  2000GB               asmdata4-5
 6      10.0TB  12.0TB  2000GB               asmdata4-6
 7      12.0TB  14.0TB  2000GB               asmdata4-7
 8      14.0TB  16.0TB  2000GB               asmdata4-8
 9      16.0TB  18.0TB  2000GB               asmdata4-9
10      18.0TB  20.0TB  2000GB               asmdata4-10
11      20.0TB  22.0TB  2000GB               asmdata4-11
12      22.0TB  24.0TB  2000GB               asmdata4-12
13      24.0TB  26.0TB  2000GB               asmdata4-13
14      26.0TB  28.0TB  2000GB               asmdata4-14
15      28.0TB  30.0TB  2000GB               asmdata4-15
</pre>
<p>客户正常使用情况下,这个lun上面相关分区的asm disk信息</p>
<pre class="brush: sql; title: ; notranslate">
 SQL&gt; CREATE DISKGROUP DATA4 EXTERNAL REDUNDANCY  DISK 
'/dev/mapper/36000d31003d39e000000000000000004p1' SIZE 1907346M ,
 '/dev/mapper/36000d31003d39e000000000000000004p2' SIZE 1907350M ,
 '/dev/mapper/36000d31003d39e000000000000000004p3' SIZE 1907348M ,
 '/dev/mapper/36000d31003d39e000000000000000004p4' SIZE 1907348M ,
 '/dev/mapper/36000d31003d39e000000000000000004p5' SIZE 1907350M  
ATTRIBUTE 'compatible.asm'='11.2.0.0.0','au_size'='8M' /* ASMCA */ 

SQL&gt; ALTER DISKGROUP DATA4 ADD  DISK 
'/dev/mapper/36000d31003d39e000000000000000004p10' SIZE 1907348M ,
'/dev/mapper/36000d31003d39e000000000000000004p6' SIZE 1907348M ,
'/dev/mapper/36000d31003d39e000000000000000004p7' SIZE 1907348M ,
'/dev/mapper/36000d31003d39e000000000000000004p8' SIZE 1907350M ,
'/dev/mapper/36000d31003d39e000000000000000004p9' SIZE 1907348M /* ASMCA */ 

SQL&gt; ALTER DISKGROUP DATA4 ADD  DISK 
'/dev/mapper/36000d31003d39e000000000000000004p11' SIZE 1907348M ,
'/dev/mapper/36000d31003d39e000000000000000004p12' SIZE 1907350M ,
'/dev/mapper/36000d31003d39e000000000000000004p13' SIZE 1907348M ,
'/dev/mapper/36000d31003d39e000000000000000004p14' SIZE 1907348M ,
'/dev/mapper/36000d31003d39e000000000000000004p15' SIZE 1907350M /* ASMCA */ 

SQL&gt; CREATE DISKGROUP DATA5 EXTERNAL REDUNDANCY  DISK 
'/dev/mapper/36000d31003d39e000000000000000004p17' SIZE 1716614M ,
'/dev/mapper/36000d31003d39e000000000000000004p18' SIZE 1716614M ,
'/dev/mapper/36000d31003d39e000000000000000004p19' SIZE 1716614M ,
'/dev/mapper/36000d31003d39e000000000000000004p20' SIZE 1716614M ,
'/dev/mapper/36000d31003d39e000000000000000004p21' SIZE 1621246M  
ATTRIBUTE 'compatible.asm'='11.2.0.0.0','au_size'='4M' /* ASMCA */ 
</pre>
<p>基于客户现在的情况,data4中的所有分区都正常,主要是要找出来data5中的5个分区的数据.因为客户不确定p16分区大小,导致后续的5个分区起始位置不好定位.从而使得恢复无法进行.通过shell脚本结合kfed尝试定位asm disk header信息</p>
<pre class="brush: bash; title: ; notranslate">
#!/bin/bash
j=xxxxxxxxxxx
for ((i=xxxxxx; i&lt;=j; i++))
do
 echo &quot;-----$i--------&quot; &gt;&gt; /home/get_au1.txt
 kfed read /dev/mapper/36000d31003d39e000000000000000004 aun=$i |
 &gt; grep  &quot;kfdhdb.dskname:              DATA&quot; &gt;&gt; /home/get_au.txt
done
</pre>
<p>结果发现无法获取到结果,通过分析发现这里由于lun过大，导致aun值过大,从而使得kfed溢出无法读取到正常值.根据parted的特性,人工dd部分block进行分析</p>
<pre class="brush: bash; title: ; notranslate">
[root@node1 bak]# kfed read xifenfei.dd aun=134|more
kfbh.endian:                          1 ; 0x000: 0x01
kfbh.hard:                          130 ; 0x001: 0x82
kfbh.type:                            1 ; 0x002: KFBTYP_DISKHEAD
kfbh.datfmt:                          1 ; 0x003: 0x01
kfbh.block.blk:                       0 ; 0x004: blk=0
kfbh.block.obj:              2147483648 ; 0x008: disk=0
kfbh.check:                  3357988283 ; 0x00c: 0xc826d5bb
kfbh.fcn.base:                        0 ; 0x010: 0x00000000
kfbh.fcn.wrap:                        0 ; 0x014: 0x00000000
kfbh.spare1:                          0 ; 0x018: 0x00000000
kfbh.spare2:                          0 ; 0x01c: 0x00000000
kfdhdb.driver.provstr:         ORCLDISK ; 0x000: length=8
kfdhdb.driver.reserved[0]:            0 ; 0x008: 0x00000000
kfdhdb.driver.reserved[1]:            0 ; 0x00c: 0x00000000
kfdhdb.driver.reserved[2]:            0 ; 0x010: 0x00000000
kfdhdb.driver.reserved[3]:            0 ; 0x014: 0x00000000
kfdhdb.driver.reserved[4]:            0 ; 0x018: 0x00000000
kfdhdb.driver.reserved[5]:            0 ; 0x01c: 0x00000000
kfdhdb.compat:                186646528 ; 0x020: 0x0b200000
kfdhdb.dsknum:                        0 ; 0x024: 0x0000
kfdhdb.grptyp:                        1 ; 0x026: KFDGTP_EXTERNAL
kfdhdb.hdrsts:                        3 ; 0x027: KFDHDR_MEMBER
kfdhdb.dskname:              DATA5_0000 ; 0x028: length=10
kfdhdb.grpname:                   DATA5 ; 0x048: length=5
kfdhdb.fgname:               DATA5_0000 ; 0x068: length=10
kfdhdb.capname:                         ; 0x088: length=0
kfdhdb.crestmp.hi:             33116450 ; 0x0a8: HOUR=0x2 DAYS=0x9 MNTH=0x4 YEAR=0x7e5
kfdhdb.crestmp.lo:            477378560 ; 0x0ac: USEC=0x0 MSEC=0x10e SECS=0x7 MINS=0x7
kfdhdb.mntstmp.hi:             33116450 ; 0x0b0: HOUR=0x2 DAYS=0x9 MNTH=0x4 YEAR=0x7e5
kfdhdb.mntstmp.lo:            486256640 ; 0x0b4: USEC=0x0 MSEC=0x2ec SECS=0xf MINS=0x7
kfdhdb.secsize:                     512 ; 0x0b8: 0x0200
kfdhdb.blksize:                    4096 ; 0x0ba: 0x1000
kfdhdb.ausize:                  4194304 ; 0x0bc: 0x00400000
kfdhdb.mfact:                    454272 ; 0x0c0: 0x0006ee80
kfdhdb.dsksize:                  429153 ; 0x0c4: 0x00068c61
kfdhdb.pmcnt:                         2 ; 0x0c8: 0x00000002
</pre>
<p>顺利找到了data5中的第一块磁盘,而且确定了起始位置,然后构造相关的dd语句把分区的数据dd到一个新磁盘中</p>
<pre class="brush: bash; title: ; notranslate">
dd if=/dev/mapper/36000d31003d39e000000000000000004 bs=4M skip=xxxxx count=429153 of=/dev/sdu
</pre>
<p>然后通过kfed查看数据<br />
<a href="https://www.xifenfei.com/wp-content/uploads/2021/07/20210704160347.jpg"><img src="https://www.xifenfei.com/wp-content/uploads/2021/07/20210704160347.jpg" alt="20210704160347" width="737" height="624" class="alignnone size-full wp-image-9356" /></a><br />
<hr />
通过类似方法依次处理,最终把5块asm disk全部找到,并且顺利dd到新的磁盘中.尝试启动crs,并mount data5<br />
<a href="https://www.xifenfei.com/wp-content/uploads/2021/07/20210704153634.png"><img src="https://www.xifenfei.com/wp-content/uploads/2021/07/20210704153634.png" alt="20210704153634" width="720" height="311" class="alignnone size-full wp-image-9357" /></a><br />
<hr />
<a href="https://www.xifenfei.com/wp-content/uploads/2021/07/20210704153548.png"><img src="https://www.xifenfei.com/wp-content/uploads/2021/07/20210704153548.png" alt="20210704153548" width="1092" height="282" class="alignnone size-full wp-image-9358" /></a><br />
<hr />
data5 磁盘组mount成功之后,数据库顺利启动,实现lun中删除分区之后,asm磁盘组数据完美恢复<br />
<a href="https://www.xifenfei.com/wp-content/uploads/2021/07/20210704153728.png"><img src="https://www.xifenfei.com/wp-content/uploads/2021/07/20210704153728.png" alt="20210704153728" width="759" height="612" class="alignnone size-full wp-image-9359" /></a><br />
<hr />
这次运气还不错,仅仅是对lun的分区使用了parted进行了删除和创建等操作,没有格式化文件系统和做成新的asm disk,不然数据会有一部分丢失.对于有部分破坏的分区,需要通过底层碎片的方法进行最大限度抢救数据.参考类似文档:<br />
<a href="https://www.xifenfei.com/2020/04/asm-disk-add-vg-recovery.html" title="asm disk被加入vg恢复">asm disk被加入vg恢复</a><br />
<a href="https://www.xifenfei.com/2018/08/asm-format-to-filesystem-recovery.html" title="又一例asm格式化文件系统恢复">又一例asm格式化文件系统恢复</a><br />
<a href="https://www.xifenfei.com/2018/11/file-system-corruption-oracle-recovery.html" title="文件系统损坏导致数据文件异常恢复">文件系统损坏导致数据文件异常恢复</a><br />
<a href="https://www.xifenfei.com/2019/07/asm-disk-format-recovery.html" title="一次完美的asm disk被格式化ntfs恢复">一次完美的asm disk被格式化ntfs恢复</a><br />
<a href="https://www.xifenfei.com/2018/05/datafile-size-0k-recovery.html" title="Oracle 数据文件大小为0kb或者文件丢失恢复">Oracle 数据文件大小为0kb或者文件丢失恢复</a><br />
<a href="https://www.xifenfei.com/2019/10/asm-disk-format-ext3-recovery.html" title="再一起asm disk被格式化成ext3文件系统故障恢复">再一起asm disk被格式化成ext3文件系统故障恢复</a><br />
<a href="https://www.xifenfei.com/2016/06/asm-disk-format-ext4-recovery.html" title="oracle asm disk格式化恢复—格式化为ext4文件系统">oracle asm disk格式化恢复—格式化为ext4文件系统</a><br />
<a href="https://www.xifenfei.com/2015/12/asm-disk-format-ntfs-recovery.html" title="oracle asm disk格式化恢复—格式化为ntfs文件系统">oracle asm disk格式化恢复—格式化为ntfs文件系统</a><br />
<a href="https://www.xifenfei.com/2015/08/%e5%88%86%e4%ba%aboracleasm-createdisk%e9%87%8d%e6%96%b0%e5%88%9b%e5%bb%ba%e7%9a%84asm-disk%e5%90%8e%e6%95%b0%e6%8d%ae0%e4%b8%a2%e5%a4%b1%e6%81%a2%e5%a4%8d%e6%a1%88%e4%be%8b.html" title="分享oracleasm createdisk重新创建asm disk后数据0丢失恢复案例">分享oracleasm createdisk重新创建asm disk后数据0丢失恢复案例</a></p>
<div id="crp_related"><ul><li style="list-style-type:decimal;font-size:11px;" ><a href="https://www.xifenfei.com/2016/09/kfed-read-asm-disk-header.html" rel="bookmark" class="crp_title">通过kfed说明asm disk header定义</a></li><li style="list-style-type:decimal;font-size:11px;" ><a href="https://www.xifenfei.com/2024/12/dd-asm-disk-header-recovery.html" rel="bookmark" class="crp_title">dd破坏asm磁盘头恢复</a></li><li style="list-style-type:decimal;font-size:11px;" ><a href="https://www.xifenfei.com/2017/05/asm-disk-partition-lost-recovery.html" rel="bookmark" class="crp_title">asm磁盘分区丢失恢复</a></li><li style="list-style-type:decimal;font-size:11px;" ><a href="https://www.xifenfei.com/2022/05/pvcreate-asm-disk-recovery.html" rel="bookmark" class="crp_title">pvcreate  asm disk导致asm磁盘组异常恢复</a></li><li style="list-style-type:decimal;font-size:11px;" ><a href="https://www.xifenfei.com/2026/04/oracleasm-createdisk-acfs-recovery.html" rel="bookmark" class="crp_title">oracleasm createdisk破坏的acfs文件系统恢复</a></li><li style="list-style-type:decimal;font-size:11px;" ><a href="https://www.xifenfei.com/2021/12/ora-15130-recovery.html" rel="bookmark" class="crp_title">ORA-15130: diskgroup &#8220;ORADATA&#8221; is being dismounted</a></li><li style="list-style-type:decimal;font-size:11px;" ><a href="https://www.xifenfei.com/2022/03/asm-disk-zero-recovery.html" rel="bookmark" class="crp_title">asm disk 磁盘部分被清空恢复</a></li><li style="list-style-type:decimal;font-size:11px;" ><a href="https://www.xifenfei.com/2016/06/pvid-asm-dismount.html" rel="bookmark" class="crp_title">pvid=yes导致asm无法mount</a></li><li style="list-style-type:decimal;font-size:11px;" ><a href="https://www.xifenfei.com/2012/04/%e6%89%8b%e5%b7%a5%e4%bf%ae%e5%a4%8dasm-disk-header-%e5%bc%82%e5%b8%b8.html" rel="bookmark" class="crp_title">手工修复ASM DISK HEADER 异常</a></li><li style="list-style-type:decimal;font-size:11px;" ><a href="https://www.xifenfei.com/2012/04/asm-header-%e5%a4%87%e4%bb%bd%e4%b8%8e%e6%81%a2%e5%a4%8d.html" rel="bookmark" class="crp_title">ASM DISK HEADER 备份与恢复</a></li><li style="list-style-type:decimal;font-size:11px;" ><a href="https://www.xifenfei.com/2022/06/fdisk-asm-disk-recovery.html" rel="bookmark" class="crp_title">fdisk分区导致asm disk破坏数据库恢复</a></li><li style="list-style-type:decimal;font-size:11px;" ><a href="https://www.xifenfei.com/2026/05/warning-detected-duplicate-paths-to-the-same-disk.html" rel="bookmark" class="crp_title">WARNING: detected duplicate paths to the same disk导致crs无法正常启动故障解决</a></li></ul></div>]]></content:encoded>
			<wfw:commentRss>https://www.xifenfei.com/2021/07/asm-disk-rm-parted-recovery.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
