异构Ortacle服务器
添加相关服务器的Hosts记录。
安装NBU client agent。
安装相同的Oracle软件版本。
创建相同的管理员账号及密码。
创建与源Oracle相同名称,相同路径的oracle实例。
关闭数据库(shutdown immedicate)。
删除数据库文件夹下的所有文件。
获取源Oracle的DBID 并记录(源Oracle运行SQL命令:Selectdbid from v$database;)。
NBU服务器
添加相关服务器的Hosts记录。
NBU安装目录XXX/db/altnames文件夹下面创建文件名为No.Restrictions的空文件(用于允许NBU做异构还原)。
查找需要还原的控制文件并记录控制文件名称(bplist -C 源Oracle客户端 -l -t 4 -s 6/13/2011 -e6/14/2011-R /)。
开始恢复
恢复控制文件
数据库起到nomout状态(startupnomount)。
登录rman运行:
set dbid=源oracle的DBID
run{
ALLOCATE CHANNEL CH00 TYPE'SBT_TAPE';
SEND 'NB_ORA_SERV=NBU服务器名称,NB_ORA_CLIENT=源Oracle服务器client名称';
restore controlfile from '控制文件名称';
}
恢复数据库文件
数据库起到mount状态(startupmount)。
登录rman运行
run {
ALLOCATE CHANNEL CH00 TYPE 'SBT_TAPE';
SEND 'NB_ORA_SERV= NBU服务器名称, NB_ORA_CLIENT=H源Oracle服务器client名称'';
restore database;
}
恢复归档日志(如只需要恢复玩完整备份,可不做)
登录rman运行
run {
ALLOCATE CHANNEL CH02 TYPE'SBT_TAPE';
SEND 'NB_ORA_SERV= NBU服务器名称, NB_ORA_CLIENT=H源Oracle服务器client名称'';
ESTORE ARCHIVELOG FROMSEQUENCE 序号 thread 1 UNTIL SEQUENCE 序号;
RELEASE CHANNEL CH02;
}
登录SQL运行
recover database untilcancel
启动数据库
登录SQL运行
alter database openresetlogs;