执行用户管理的恢复的高级场景_响应当前控制文件的子集丢失

使用以下过程来恢复数据库如果永久的介质故障已损坏一个或多个数据库的控制文件和至少一个当前的控制文件没有被介质故障损坏。

1.拷贝一个多路复用控制文件到缺省的位置

如果包含丢失的控制文件的磁盘和文件系统是完好无损的,那么可以简单地拷贝完好无损的控制文件到缺失的控制文件的位置。在这种情况中,你不需要编辑CONTROL_FILES初始化参数。

通过拷贝多路复用控制文件来替换损坏的控制文件:
1)如果实例仍在运行,那么关闭它:
SQL> SHUTDOWN ABORT

2)纠正导致介质故障的硬件问题。如果你不能快速修复硬件问题,那么通过还原损坏的控制文件到备选的存储设备来继续数据库恢复。

3)使用数据库当前控制文件的完好无损的多路复用副本来拷贝覆盖损坏的控制文件。例如:
% cp /oracle/good_cf.f /oracle/dbs/bad_cf.f

4)启动实例,挂载和打开数据库。
SQL> STARTUP


2.拷贝一个多路复用控制文件到非缺省的位置

如果包含丢失的控制文件的磁盘和文件系统不是完好无损的,那么你不可以拷贝完好无损的控制文件到缺失的控制文件的位置。在这种情况中,你必须编辑CONTROL_FILES初始化参数为缺失的控制文件指示新的位置。

还原控制文件到非缺省的位置:
1)如果实例仍在运行,那么关闭它:
SQL> SHUTDOWN ABORT

2)如果不能纠正导致介质故障的硬件问题,那么拷贝完好无损的控制文件到备选的位置。

例如,拷贝control01.dbf的完整版本到新的磁盘位置:
% cp /disk1/oradata/trgt/control01.dbf /new_disk/control01.dbf

3)编辑数据库的参数文件以便CONTROL_FILES参数反映所有控制文件的当前位置和排除不能还原的所有控制文件。

假设初始化参数文件包含以下设置:
CONTROL_FILES=‘/disk1/oradata/trgt/control01.dbf’,‘/bad_disk/control02.dbf’

可以编辑CONTROL_FILES初始化参数如下:
CONTROL_FILES=‘/disk1/oradata/trgt/control01.dbf’,‘/new_disk/control02.dbf’

4)启动实例,挂载和打开数据库。
SQL> STARTUP




来源:《Oracle Database Backup and Recovery User’s Guide,19c》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值