oracle asm 恢复 Oracle数据恢复:AMDU恢复ASM磁盘组数据

当ASM磁盘组损坏时,可通过AMDU进行数据库恢复。此方法非标准恢复手段,适用于常规方法无效的情况。步骤包括:根据alert.log创建pfile,启动数据库到nomount状态,获取控制文件编号,如果控制文件不在ASM中则指向它,提取并替换控制文件,mount数据库,找出数据文件和重做日志信息,提取并重新定位数据库文件,最后打开数据库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

如何在ASM磁盘组损坏后使用AMDU进行数据库恢复

注意:这并不是针对受损ASM磁盘组中的内容使用RMAN备份来恢复方案的替代方案。使用这种工具一般是在常规恢复手段不起效而为了“尽最大努力”而进行的尝试。因此这种修复手段并不能对数据库进行完整性恢复。

1. 从数据库alert.log启动信息中找到相关参数信息,并为已经丢失的数据库建立pfile。

2. 启动数据库到nomount状态。

3. 从alert日志中获取控制文件编号。这在数据库刚启动的信息中可以找到,如:
eg., control_files='+DATA/orcl/controlfile/current.256.709676643' 其编号为256

4. 如果控制文件的备份存放位置不是在asm里的,那么可以将pfile指向直接指向这个文件并mount数据库。
不过,如果你没有控制文件备份的话,那么可以从第三步中判断文件号,然后再从asm中将文件提取出来。

$ amdu -diskstring <asm_diskstring> -extract DATA.256 

5. 关闭数据库,修改control_file指向被提取出来的控制文件位置

6. 启动并mount数据库

7. 一旦库mount起来后,可以使用以下语句找到数据文件编号和在线重做日志文件信息:

sql> select name from v$datafile
sql> select * from v$logfile

8. 和第四步中提到方式一样,将所有数据文件和重做日志提取出来

9

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值