RMAN异机恢复,将指定的表空间恢复到8月12号2点8分


大致步骤如下:
0:拷贝备份的文件到恢复机,路径也备份时的路径一致;

1:使用默认的init.ora修改出initeagaodb.ora参数文件;

2:创建initeagaodb.ora参数文件中的相关文件目录,把目录创建在空闲分区比较大的分区,注意闪回目录在后续的recover时会被自动存储恢复的归档,应用后又被自动删除;
3:使用startup nomount启动数据库;
4:使用rman恢复控制文件,注意此控制文件需要恢复到指定需要恢复时间点之后的备份,下面是恢复到8点中的备份
RMAN>  restore controlfile from '/data4/130.177.65.815back/contorlfileback/controlc-1839368230-20120812-03';
5:启动数据库到mount状态
SQL> alter database mount;
6:重命名数据文件路径,以及restore需要的数据文件(数据文件id号可以备份日志中获取);
RMAN> run{
allocate channel ch1 type disk;
allocate channel ch2 type disk;
allocate channel ch3 type disk;
allocate channel ch4 type disk;
set newname for datafile 1 to '/data2/oradatarecovery/system01.dbf';
set newname for datafile 2 to '/data2/oradatarecovery/undotbs01.dbf';
set newname for datafile 3 to '/data2/oradatarecovery/sysaux01.dbf';
set newname for datafile 61 to '/data2/oradatarecovery/system02.dbf';
set newname for datafile 67 to '/data2/oradatarecovery/sysaux02.dbf';
set newname for datafile 69 to '/data2/oradatarecovery/eaunion_data01.dbf';
restore datafile 1,2,3,61,67,69;
switch datafile all;
release channel ch1;
release channel ch2;
release channel ch3;
release channel ch4;
}
7:recover数据库到指定时间点
RMAN> sql 'alter session set nls_Date_format="yyyy-mm-dd hh24:mi:ss"';
RMAN>recover database until time '2012-08-12 01:08:00' skip tablespace eaon_log,fnk_ta,z_dta,nion,zdan,eion_log,enex;
8:使用只读打开数据库后expdp出需要的数据即可
SQL> alter database open read only;

DBLINK 导出到别的库 …………………..


大致步骤如下(全部在恢复机上操作,把备份拷贝过来,拷贝的路径与备份时的路径一致):

1:创建参数文件

[oracle@sz dbs]$ cat initeagaodb.ora 
db_name='eagaodb'
memory_target=10G
processes = 150
audit_file_dest='/data2/oradatarecovery/admin/orcl/adump'
db_block_size=8192
db_recovery_file_dest='/data2/oradatarecovery/flash_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='/data2/oradatarecovery/diag'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300 
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'
# You may want to ensure that control files are created on separate physical
# devices
control_files = '/data2/oradatarecovery/control01.ctl','/data2/oradatarecovery/control02.ctl'
compatible ='11.2.0'

2:建立上述目录文件

3:启动数据库

SQL> startup nomount;

4:恢复控制文件

[oracle@szmlserver12_32 ~]$ rlwrap rman target /


Recovery Manager: Release 11.2.0.1.0 - Production on Thu Aug 23 12:05:05 2012
Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

connected to target database: EAGAODB (not mounted)

RMAN> restore controlfile from '/data4/130.177.65.815back/contorlfileback/controlc-183936823
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Oracle数据库中,使用RMAN进行异机异目录恢复需要以下步骤: 1. 在目标数据库服务器上创建与源数据库相同的目录结构。 2. 在目标数据库服务器上创建与源数据库相同的数据库实例,包括实例名、SID、监听器、参数文件等。 3. 将备份文件从源数据库服务器拷贝到目标数据库服务器上的对应目录中。 4. 在目标数据库服务器上使用RMAN连接到目标数据库实例。 5. 执行RMAN命令进行恢复操作,包括设置恢复目标、设置恢复策略、设置备份文件位置等。 6. 执行完毕后,关闭数据库并重启实例。 具体步骤如下: 1. 在目标数据库服务器上创建与源数据库相同的目录结构。 需要创建与源数据库相同的目录结构,包括控制文件、数据文件、归档日志和备份文件等目录。 2. 在目标数据库服务器上创建与源数据库相同的数据库实例。 需要创建与源数据库相同的数据库实例,包括实例名、SID、监听器、参数文件等。 3. 将备份文件从源数据库服务器拷贝到目标数据库服务器上的对应目录中。 需要将备份文件从源数据库服务器拷贝到目标数据库服务器上的对应目录中,保证备份文件在恢复能被找到。 4. 在目标数据库服务器上使用RMAN连接到目标数据库实例。 使用以下命令连接到目标数据库实例: ``` rman target sys/password@targetdb ``` 其中,sys/password是目标数据库的用户名和密码,targetdb是目标数据库的服务名或SID。 5. 执行RMAN命令进行恢复操作。 首先,设置恢复目标: ``` run { set until time "to_date('2022-12-31 23:59:59', 'YYYY-MM-DD HH24:MI:SS')"; set newname for datafile '/path/to/source/datafile01.dbf' to '/path/to/target/datafile01.dbf'; set newname for datafile '/path/to/source/datafile02.dbf' to '/path/to/target/datafile02.dbf'; ... set newname for datafile '/path/to/source/datafileN.dbf' to '/path/to/target/datafileN.dbf'; restore database; switch datafile all; recover database; } ``` 其中,set until time语句指定恢复到的,set newname语句指定恢复后的数据文件路径和名称。 然后,设置恢复策略: ``` run { set archivelog destination to '/path/to/target/archivelog'; restore archivelog all; } ``` 其中,set archivelog destination语句指定归档日志的恢复目录,restore archivelog all语句恢复所有的归档日志。 最后,设置备份文件位置: ``` run { allocate channel ch1 type 'sbt_tape'; set controlfile autobackup format for device type sbt to '/path/to/controlfile_%F.bkp'; backup current controlfile for standby; } ``` 其中,allocate channel语句指定备份类型和通道,set controlfile autobackup format语句指定自动备份控制文件的格式,backup current controlfile for standby语句备份当前的控制文件。 6. 执行完毕后,关闭数据库并重启实例。 在所有操作执行完毕后,关闭数据库并重启实例,然后可以进行测试。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值