Windows2014使用NBU备份实现Oracle11g本地恢复和异地恢复
主机名 | IP | 角色 | 环境配置 |
---|---|---|---|
Win-126 | 192.168.0.126 | 业务数据库 | 安装完整的oracle11G数据库和实例 |
Win-NBU | 192.168.0.127 | NBU服务器 | 服务端不需要安装数据库 |
Win-128 | 192.168.0.128 | 异机恢复数据库 | oracle11G软件不需要安装数据库实例 |
环境准备
修改主机名字,关闭防火墙,机器内存高于10G
配置号hosts文件通过ping 主机名都能够互相ping通
1.安装NBU备份软件(Win-NBU)
已管理员身份运行
2.配置NBU存储单元(Win-NBU)
3.配置NBU客户端(Win-126)
1.更改数据库为归档模式
查看归档是否开启
archive log list;
开启归档
shutdown immediate;
startup mount;
alter database archivelog; 开启归档模式
alter database open;
2.安装NBU客户端
3.修改NBU rman 备份脚本
C:\Program Files\Veritas\NetBackup\DbExt\Oracle\Samples\rman
4.NBU服务端新建备份策略备份客户端数据库(Win-NBU)
选择NBU rman备份脚本
收到发起备份策略
查看备份状态
5.本地恢复数据库(Win-126)
1.破坏数据
关闭数据
shutdown immediate;
删除所有数据文件
2.恢复数据
NBU查看Oracle备份
cd C:\Program Files\Veritas\NetBackup\bin
bplist.exe -C win-126 -t 4 -R -I /
强制关库
shutdown abort;
数据库开启到nomount状态
startup nomount;
恢复控制文件
rman target / 连接到ORCL实例
RMAN> run {
allocate channel ch00 type sbt_tape;
restore controlfile from ‘cntrl_14_1_’;
release channel ch00;
}
恢复数据文件(需要关闭数据库开启到mount状态)
shutdown immediate;
startup mount;
rman target / 连接到ORCL实例
RMAN> run {
allocate channel ch00 type sbt_tape;
allocate channel ch01 type sbt_tape;
restore database;
release channel ch00;
release channel ch01;
}
恢复日志
RMAN> run {
allocate channel ch00 type sbt_tape;
allocate channel ch01 type sbt_tape;
recover database;
release channel ch00;
release channel ch01;
}
设置scn号
recover database until scn ;
已log方式打开数据库
alter database open resetlogs;
查看数据库是否正常
SQL> select * from dual;
查看数据当前状态(open为正常)
select status from v$instance;
6.异机恢复数据库(Win-128)
1.安装NBU客户端
2.了解Oracle nomount、mount和 open区别
nomount:读取初始化参数文件,启动实例。在这个状态下,可以重建控制文件,重建数据库。
mount:打开控制文件,但是不打开数据库。在这个状态下,可以执行数据库日志归档,数据库介质恢复,使数据文件联机或脱机,重新定位数据文件,重做日志文件等。
open:打开数据文件,日志文件。对数据文件和日志文件进行校验检查,对数据库数据进行增删改等基本操作。
3.解除NBU异机 恢复限制。
(Win-NBU)上操作,默认情况下, NetBackup 只允许备份文件的客户机执行恢复。 NetBackup 实施此限制的方法是:只需在 NetBackup 主服务器上进行必要的配置,在主服务器上创建以下目录: install_path\NetBackup\db\altnames\No.Restrictions
4.恢复数据
1、(Win-128)上查看NBU的备份
cd C:\Program Files\Veritas\NetBackup\bin
bplist.exe -C win-126 -t 4 -R -I /
2、(Win-126)上操作, 查看业务库的DBID
select dbid from v$database;
3(Win-126)上操作,在oracle 业务数据库上 创建pfile文件 拷贝到异地恢复服务器上。
create pfile=‘C:\oracle11g\init.ora’ from spfile;
4、(Win-128)主机上设置变量,创建实例,服务,设置pdbid,恢复pfile文件,恢复数据
5、设置环境变量:
set ORACLE_SID=orcl
6、创建服务:
oradim -new -sid orcl
7、设置pdbid
8、Win-126数据库上拷贝过来的pfile文件将数据库启动到 nomount 状态
sqlplus / as sysdba
SQL> startup nomount pfile=‘C:\oracle11g\init.ora’
9、恢复control控制文件(win-nbu,win-126服务器名)
rman target / nocatalog
run {
allocate channel ch00 type ‘sbt_tape’;
SEND ‘NB_ORA_SERV=win-nbu,NB_ORA_CLIENT=win-126’;
restore controlfile from ‘cntrl_14_1_’;
release channel ch00;
}
10 、 恢复数据文件
启动数据库到 mount 状态
SQL>alter database mount;
run {
allocate channel ch00 type ‘sbt_tape’;
SEND ‘NB_ORA_SERV=win-nbu,NB_ORA_CLIENT=win-126’;
restore database;
release channel ch00;
}
11 、 恢复日志文件(恢复日志文件的时可能需要指定scn号)
run {
allocate channel ch00 type ‘sbt_tape’;
SEND ‘NB_ORA_SERV=win-nbu,NB_ORA_CLIENT=win-126’;
recover database;
release channel ch00;
}
12 、指定scn号
recover database until scn
13 、以log方式打开
alter database open resetlogs;
14、查看数据库当前状态
select status from v$instance;
今天的文章
windows oracle备份_oracle数据库备份和恢复命令分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/81339.html