大道浮屠诀---NBU7.7.3_oracle11G单机-单机(异机恢复WINDOWS2008平台)
现有环境说明:
一台WINDOWS2008R2:安装有NBU7.7.3,作为服务端
一台WINDOWS2008R2:安装有oracle11.2.0.3,作为数据库服务器
现假设数据库意外崩溃,需要进行恢复
前提环境搭建:
1、一台WINDOWS2008R2:安装有于原版本一致的数据库软件(不必安装实例),并安装nbu客户端,要求版本低于服务端
2、测试NBU服务端与新客户端的连通性
安装数据库软件:
1、添加本机hosts解析
2、解压并合并安装包

3、双击setup执行安装程序







源库目录查看方法,服务里查看OracleService+SID的服务,查看属性即可获知





安装完毕!
NBU客户端安装
添加hosts解析(服务端和客户端互添解析)
双击Browser执行安装程序








安装完成!
测试连通性:可通过测试备份客户端文件来测试连通性
在连通性正常的情况下,在客户端搜索备份集
执行搜索命令之前在服务端添加创建如下文件(允许异机恢复,不然搜索时回报错EXIT STATUS 135: client is not validated to perform the requested operation)

在客户端NBU家目录下执行命令bplist.exe -C oracle11g -t 4 -R \ 【其中oracle11g根据实际情况,填写源数据库系统解析名】

可以看出来,这里有两份备份
接下来利用命令创建数据库服务C:\app\Administrator\product\11.2.0\dbhome_1\BIN这个目录下执行
oradim -NEW -SID xxx 【xxx根据源库数据库SID来】

前期准备到此全部结束
接下来开始恢复(步骤中的个别实例名、路径等根据实际情况修改)
1、恢复spfile
方法一、根据其他数据库的pfile进行修改
方法二、拷贝源库SPFILE
方法三、rman恢复
这里使用方法一:
orcl.__db_cache_size=687865856
orcl.__java_pool_size=16777216
orcl.__large_pool_size=16777216
orcl.__oracle_base='C:\app\Administrator' #ORACLE_BASE set from environment
orcl.__pga_aggregate_target=704643072
orcl.__sga_target=1023410176
orcl.__shared_io_pool_size=0
orcl.__shared_pool_size=268435456
orcl.__streams_pool_size=16777216
*.audit_file_dest='C:\app\Administrator\admin\orcl\adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='C:\app\Administrator\oradata\orcl\control01.ctl','C:\app\Administrator\fast_recovery_area\orcl\control02.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_name='orcl'
*.db_recovery_file_dest='C:\app\Administrator\fast_recovery_area'
*.db_recovery_file_dest_size=4322230272
*.diagnostic_dest='C:\app\Administrator'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'
*.log_archive_dest_1='location=C:\app\Administrator\arch'
*.log_archive_format='arc_%S_%T_%R.log'
*.memory_target=1717567488
*.open_cursors=300
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.undo_tablespace='UNDOTBS1'
内存大小根据实际修改,库名、路径根据实际修改
把此pifle考到新客户端中并启动
set ORACLE_SID=orcl rman target / RMAN>startup nomount pfile='C:\app\Administrator\pfile.ora';

2、恢复控制文件
run{
allocate channel c1 type sbt_tape;
SEND 'NB_ORA_SERV=test,NB_ORA_CLIENT=oracle11g'; #这里的CLIENT为源机解析名
restore controlfile from 'cntrl_p_t';
release channel c1;
}


启动到mount状态

3、恢复数据文件
这里有两种情况
一是数据文件路径不一致
二是数据文件路径一致
这里暂时先讨论一致的情况的恢复,(单机环境下恢复,路径基本与源库一致)
run{
allocate channel c1 type 'sbt_tape';
allocate channel c2 type 'sbt_tape';
SEND 'NB_ORA_SERV=test,NB_ORA_CLIENT=oracle11g';
restore database;
release channel c1;
release channel c2;
}

4、recover数据库
reocver的方式有多种、这里按照追加到控制文件最新归档为止
run
{
allocate channel ch00 type 'sbt_tape';
allocate channel ch01 type 'sbt_tape';
SEND 'NB_ORA_SERV=test,NB_ORA_CLIENT=oracle11g';
recover database;
release channel ch00;
release channel ch01;
}

直接写recover database他会 在恢复完所有归档的时候继续去请求下一个SCN,这时候你可以选择取消下个一个SCN的恢复
SQL> recover database using backup controlfile until cancel;

5、打开数据库
由于是恢复出来的数据库,要用以下命令打开
SQL> alter database open resetlogs;


6、临时表空间重建[这里针对的是源库与新库temp路径不一致的情况,一般一致情况下,启库时会根据记录的TEMP路径创建temp文件]
备份的时候不备份临时表空间所以恢复也就不恢复
查看新库的临时表空间,执行以下语句
SQL> select f.file#,t.ts#,f.name "File",t.name "Tablespace" from v$tempfile f,V$tablespace t where f.ts# = t.ts#;

我这里看到是在这个位置【注:这里查到的位置是之前源库临时表空间的位置】
接下来重建临时表空间
一、 create temporary tablespace TEMP2 TEMPFILE 'C:\APP\ADMINISTRATOR\ORADATA\ORCL\TEMP02.DBF' SIZE 512M REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED;

二、alter database default temporary tablespace TEMP2;

三、drop tablespace TEMP including contents and datafiles;

再次查看


至此,WINDOWS_FOR_NBU_ORACLE_单机-单机恢复完毕!
大道浮屠诀---NBU7.7.3_oracle11G单机-单机(异机恢复WINDOWS2008平台)的更多相关文章
- 大道浮屠诀---mysql5.7.28 for linux安装
环境: redhat6.5 MySQL Community Server 5.7.28 https://dev.mysql.com/downloads/mysql/5.7.html 安装RMP包的具体 ...
- 大道浮屠诀---cwRsync同步工具的使用
目的: 在日常生活中,我们有时候会遇到这样类似的问题 ---需要把一台服务器上的某个重要的文件进行备份(拷贝另外的服务器上) ---需要同步系统上的配置文件到其他系统 利用此cwRsync软件可以解决 ...
- 大道浮屠诀---NBU报错代码之status2
在一次windows2008R2系统上部署7.7.3备份过程中遇到了此报错 当备份catalog时,会出现status 2报错 经过一系列排查后,得出如下解决方法 1.任务进程中有大量的nbtelem ...
- NBU7.0 RMAN 异机恢复 not found in NetBackup catalog
问题描写叙述: RMAN> run { 2> allocate channel t1 type 'sbt_tape'; 3> send 'NB_ORA_SERV=netback ...
- Dataguard单机—>单机
本演示案例所用环境: primary Standby OS Hostname CHINA-DB1 CHINA-DB2 OS Version SUSE Linux Enterprise Server 1 ...
- 6.Netbackup-Oracle数据库恢复演练报告(下)
1.1 Oracle数据库恢复 目录 1 安装新的客户端 2 新建异机恢复文件 3 新建数据库实例 4 建立spfile文件 5 建立数据文件夹 6 启动数据库到nomount状态 7 列出备份信息 ...
- redis的几个知识点
Redis的全称是Remote Dictionary Server,即远程字典服务,通常用作服务器缓存服务. 这里通过Redis的几个知识点来了解Redis. Redis的通讯协议 Redis的通讯协 ...
- 刨树根,抓住redis 进行七连问
追着 redis 进行七连问 Hello Redis 有几个问题想请教你 Hello,Redis! 我们相处已经很多年了,从模糊的认识到现在我们已经深入结合,你的好我一直都知道也一直都记住,能否在让我 ...
- RabbitMQ的使用(二)- RabbitMQ服务在单机中做集群
RabbitMQ的使用(二)- RabbitMQ服务在单机中做集群 作者:markjiang7m2 原文地址:https://www.cnblogs.com/markjiang7m2/p/128371 ...
随机推荐
- 判断是否英文字母或数字的C#正则表达式
private int IsDigitOrNumber(string str) { if(System.Text.RegularExpressions.Regex.IsMatch(str,@" ...
- shell-#!
当shell执行一个程序时,会要求UNIX内核启动一个新的进程,以便在该进程里执行所指定的程序. 当系统只有一个shell时,退回到/bin/sh 的机制非常方便,但现行的UNIX系统都会拥有好几个s ...
- FrameWork内核解析之Handler消息机制(二)
阿里P7Android高级架构进阶视频(内含Handler视频讲解)免费学习请点击:https://space.bilibili.com/474380680 一.Handler 在Android开发的 ...
- python之序列去重以及生成器、生成器函数、生成器表达式与迭代器浅谈
首先要明确序列值类型是否可哈希,因为可哈希的值很简单就可以用 in /not in 写个生成器去判断,如果是不可哈希的就要去转换为可哈希的再用 in/not in 去判断 原地不可变类型(可哈希): ...
- HDU-3001 TSP+三进制DP
题意:给出一个无向图,每个点不能被经过超过两次,选择一个起点问经过所有点至少一次的最短路径. 解法:注意此题是每个点不能经过超过两次,这和一般的TSP问题不同.但是也没有使得此题变得很复杂,原来的状态 ...
- ida x32 dbg 动态调试
http://www.xrwcn.com/html/8.html 0x20019u 注册表 RegOpenKeyEx函数 LONG RegOpenKeyEx( HKEY hKey, // handle ...
- hdu 3450 后缀数组
题目大意: 求多个字符串的最长公共子串 基本思路: 参加我的博客hdu2774 代码如下: #include<cstdio> #include<cstring> using n ...
- Jedis连接池的使用(转)
http://www.cnblogs.com/linjiqin/archive/2013/06/14/3135248.html 所需jar:jedis-2.1.0.jar和commons-pool-1 ...
- HIVE基本原理和基础
读时模式:HIVE加载数据时不校验,查询数据时才校验,与数据库相反
- v-for 循环 绑定对象 和数组
<!--v-for 迭代数组--> <div id="app11"> <div v-for="info in infos"> ...