Oracle RAC备份异机单实例恢复演练
本文只节选了操作方案的部分章节:
3. 操作步骤 3.1. 异机单实例Oracle数据库软件安装
在异机上进行单实例Oracle数据库软件安装。该步骤过程不再本文中重复描述,如果对安装过程存在疑问,可参考之前发布的《Oracle 11g R2数据库安装作业指导书》相关内容。注意:为了保障恢复的正确性,应该尽量保障该服务器上安装的数据库软件版本与Rac平台下的数据库版本一致(包括小版本)。
3.2. 在Rac环境下进行全库备份
在Rac环境下,通过RMAN数据库备份管理工具对数据库进行全库备份。具体操作流程可以参考如下:
Rman
RMAN>connect target
RMAN>连接到目标数据库: SCMIS (DBID=2125161875)
RMAN>backup database;
需要注意查看输出日志中备份文件输出的目录。
3.3. 将备份文件整体上传到单实例服务器
将备份出来的相关文件通过FTP软件上传到单实例服务器。(本例中存储的路径为:d:\rmandump\)
3.4. 修改新生成的initSCMIS.ora文件
将文件内容修改成符合我们单实例环境下的设置,本操作过程中修改前,修改后的文件展示如下,方便大家进行对比、理解。
修改前文件如下:
scmis2.__db_cache_size=268435456
scmis1.__db_cache_size=402653184
scmis1.__java_pool_size=16777216
scmis2.__java_pool_size=16777216
scmis1.__large_pool_size=16777216
scmis2.__large_pool_size=16777216
scmis1.__oracle_base='C:\app\Administrator'#ORACLE_BASE set from environment
scmis2.__oracle_base='C:\app\Administrator'#ORACLE_BASE set from environment
scmis1.__pga_aggregate_target=704643072
scmis2.__pga_aggregate_target=704643072
scmis1.__sga_target=1023410176
scmis2.__sga_target=1023410176
scmis1.__shared_io_pool_size=0
scmis2.__shared_io_pool_size=0
scmis2.__shared_pool_size=704643072
scmis1.__shared_pool_size=570425344
scmis1.__streams_pool_size=0
scmis2.__streams_pool_size=0
*.audit_file_dest='C:\app\Administrator\admin\SCMIS\adump'
*.audit_trail='db'
*.cluster_database=true
*.compatible='11.2.0.0.0'
*.control_files='+ASMDISK/scmis/controlfile/current.261.813766611','+ASMDISK/scmis/controlfile/current.260.813766613'
*.db_block_size=8192
*.db_create_file_dest='+ASMDISK'
*.db_domain=''
*.db_name='SCMIS'
*.db_recovery_file_dest='+ASMDISK'
*.db_recovery_file_dest_size=10737418240
*.diagnostic_dest='C:\app\Administrator'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=SCMISXDB)'
SCMIS2.instance_number=2
SCMIS1.instance_number=1
*.log_archive_format='ARC%S_%R.%T'
*.memory_target=1717567488
*.nls_language='SIMPLIFIED CHINESE'
*.nls_territory='CHINA'
*.open_cursors=300
*.processes=1000
*.recyclebin='ON'
*.remote_listener='SCAN:1521'
*.remote_login_passwordfile='exclusive'
*.sessions=1105
SCMIS2.thread=2
SCMIS1.thread=1
SCMIS2.undo_tablespace='UNDOTBS2'
SCMIS1.undo_tablespace='UNDOTBS1'
修改后文件如下:
*.audit_file_dest='d:\adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='D:\ctl\CONTROL01.CTL','D:\ctl\CONTROL02.CTL'
*.db_block_size=8192
*.db_domain=''
*.db_name='SCMIS'
*.diagnostic_dest='d:\app\Administrator'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=SCMISXDB)'
*.log_archive_dest_1='LOCATION=d:\arch'
*.log_archive_format='%t_%s_%r.dbf'
*.memory_target=1717567488
*.nls_language='SIMPLIFIED CHINESE'
*.nls_territory='CHINA'
*.open_cursors=300
*.processes=1000
*.remote_login_passwordfile='exclusive'
*.sessions=1105
*.undo_tablespace='UNDOTBS1'
注意内容:需要注意在参数文件中相关设置路径的参数,要保障服务器上存在相应的路径结构。
3.5. 将单实例服务启动到nomount状态
使用新的参数文件,将数据库启动到nomount状态。请注意确认使用新的参数文件启动,如果必要,可以在启动的指令中指定读取的文件路径以及文件名。
SQL> startup nomount;
3.6. 通过RMAN还原参数文件
通过RMAN工具,从备份中将参数文件还原到单实例服务器,示范指令如下:
RMAN> restore spfile to pfile 'd:\initSCMIS.ora' from 'd:\rmandump\ CF_SCMIS_7_1 ';
3.7. 将数据库启动到MOUNT状态
RMAN> mount database;
3.8. 将备份集注册进控制文件里
RMAN> catalog start with 'd:\rmandump\';
3.9. 确认数据文件、联机日志文件、临时文件路径
SQL> set pagesize 9999
SQL> col NAME for a65
SQL> select file#,name from v$datafile;
看到结果如下:
1 '+ASMDISK/scmis/onlinelog/group_1.262.813766617'
2 '+ASMDISK/scmis/onlinelog/group_1.263.813766619'
3 '+ASMDISK/scmis/onlinelog/group_2.264.813766621'
4 '+ASMDISK/scmis/onlinelog/group_2.265.813766625'
5 '+ASMDISK/scmis/onlinelog/group_3.268.813766997'
6 '+ASMDISK/scmis/onlinelog/group_3.269.813767001'
7 '+ASMDISK/scmis/onlinelog/group_4.270.813767003'
8 '+ASMDISK/scmis/onlinelog/group_4.271.813767007'
SQL> select name from v$tempfile;
+ASMDISK/scmis/tempfile/temp.261.781033565
3.10. 通过RMAN重命名数据文件和临时文件,进行还原
在RMAN下执行如下指令:
RUN {
SET NEWNAME FOR DATAFILE 1 to 'D:\datafile\system01.dbf';
SET NEWNAME FOR DATAFILE 2 to 'D:\datafile\sysaux01.dbf';
SET NEWNAME FOR DATAFILE 3 to 'D:\datafile\undotbs1.dbf';
SET NEWNAME FOR DATAFILE 4 to 'D:\datafile\users01.dbf';
SET NEWNAME FOR DATAFILE 5 to 'D:\datafile\undotbs2.dbf';
SET NEWNAME FOR DATAFILE 6 to 'D:\datafile\scmisx3_app01.dbf';
SET NEWNAME FOR DATAFILE 7 to 'D:\datafile\scmisx3_sys01.dbf';
SET NEWNAME FOR TEMPFILE 1 to 'D:\datafile\temp01.dbf';
RESTORE DATABASE;
SWITCH DATAFILE ALL;
SWITCH TEMPFILE ALL;
}
3.11. 修改联机日志文件的路径
在SQLPLUS下执行:
alter database rename file '+ASMDISK/scmis/onlinelog/group_1.262.813766617' to 'D:\redolog\redo1_1.log';
alter database rename file '+ASMDISK/scmis/onlinelog/group_1.263.813766619' to 'D:\redolog\redo1_2.log';
alter database rename file '+ASMDISK/scmis/onlinelog/group_2.264.813766621' to 'D:\redolog\redo2_1.log';
alter database rename file '+ASMDISK/scmis/onlinelog/group_2.265.813766625' to 'D:\redolog\redo2_2.log';
alter database rename file '+ASMDISK/scmis/onlinelog/group_3.268.813766997' to 'D:\redolog\redo3_1.log';
alter database rename file '+ASMDISK/scmis/onlinelog/group_3.269.813767001' to 'D:\redolog\redo3_2.log';
alter database rename file '+ASMDISK/scmis/onlinelog/group_4.270.813767003' to 'D:\redolog\redo4_1.log';
alter database rename file '+ASMDISK/scmis/onlinelog/group_4.271.813767007' to 'D:\redolog\redo4_2.log';
注意:以上每一行指令执行完成后都会被断开连接,只需要重新连接,继续逐行执行即可。
联机日志文件修改之后查看
SQL> set pagesize 9999
SQL> select member from v$logfile;
3.12. 恢复数据库
RMAN> recover database;
3.13. RESETLOGS打开数据库
SQL> alter database open resetlogs;
3.14. 恢复结果检查
到这里RAC到单实例备份恢复已经完毕,我们可以简单检查下
SQL> select thread#,status,enabled from v$thread;
THREAD# STATUS ENABLED
---------- ------------ ----------------
1 OPEN PUBLIC
2 CLOSED PUBLIC
SQL> select group#,thread#,archived,status from v$log;
GROUP# THREAD# ARCHIV STATUS
---------- ---------- ------ --------------------------------
1 1 1 YES INACTIVE
2 2 1 NO CURRENT
3 3 2 YES ACTIVE
4 4 2 YES UNUSED
SQL> archive log list;
数据库日志模式 存档模式
自动存档 启用
存档终点 d:\arch
最早的联机日志序列 3
下一个存档日志序列 4
当前日志序列 4
3.15. 抽查业务系统用户的数据
根据实际情况,使用业务系统所建立的用户,检查相关表空间,对象、数据的恢复情况。
Oracle RAC备份异机单实例恢复演练的更多相关文章
- 12c RAC 用Rman 恢复到异机单实例
准备工作 原服务器软件部署:Redhat 6.6 + Oracle 12.2.0.1 rac Oracle12c单实例安装 1.创建恢复服务器,设置大于原库数据大小的磁盘容量.设置相同的服务器主机名参 ...
- 使用不同用户对Oracle数据库进行异机恢复,失败,错误:Backup file not found in NetBackup catalog
最近做某数据库恢复演练,数据库版本是10.2.0.4,恢复控制文件一直报错,报错如下,经过反复折腾,原来恢复机上oracle用户不是oracle导致(我的是oraclev4),查看源库oracle用户 ...
- Oracle 11.2.0.4单实例打PSU,OJVM PSU补丁快速参考
写在前面: 1.Oracel打每个补丁的操作有时存在差异,所以不管多熟悉,都应该在打任何补丁之前阅读新补丁中附带的readme. 2.Oracle每季度都会更新一个最新的PSU,本文最新指的是当前最新 ...
- Asianux 7.3安装Oracle 11.2.0.4单实例体验
环境:Asianux 7.3 需求:安装Oracle 11.2.0.4 单实例 背景:系统使用默认的最小安装部署,Oracle安装额外需要的包统一使用yum安装. 查看当前系统相关信息: [root@ ...
- Linux平台Oracle 12.1.0.2 单实例安装部署
主题:Linux平台Oracle 12.1.0.2 单实例安装部署 环境:RHEL 6.5 + Oracle 12.1.0.2 需求:安装部署OEM 13.2需要Oracle 12.1.0.2版本作为 ...
- Oracle 11.2.0.4单实例打补丁
Oracle 11.2.0.4单实例打PSU,OJVM PSU补丁快速参考 写在前面: · 1.Oracel打每个补丁的操作有时存在差异,所以不管多熟悉,都应该在打任何补丁之前阅读新补 ...
- RMAN - 备份异机恢复
OS: Oracle Linux Server release 5.7 DB: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - ...
- RMAN 备份异机恢复 并创建新DBID
测试平台信息: Oracle:11gR2 操作系统:Redhat 5.5 Target DB:dave 几点说明: (1)RMAN 异机恢复的时候,db_name必须相同. 如果说要想改成其他的实 ...
- Oracle - 通过dg,完成单实例到rac的迁移
一.概述 本文将介绍如何给单实例搭建一个rac dg,以及如何对其进行角色转换,完成从单实例到rac的迁移.预先具备的知识(rac搭建,单实例-单实例dg搭建) 二.实验环境介绍 主库(已有数据库实例 ...
随机推荐
- linux高级命令组合
ps -auxww | grep httpd 快速找到正在运行的apache服务安装目录 find / -path 'sina_app_v3*' 快速找到根目录下面的sina_app_v3目录 fi ...
- C#_MVC_Repository_CURD_Controller
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- Tomcat启动报错 Failed to start component [StandardServer[8005]]解决
SEVERE: The required Server component failed to start so Tomcat is unable to start. org.apache.catal ...
- 关于Eclipse插件开发-----加入首选项(preferencePages)
选择主菜单"窗口---->首选项"命令打开"首选项"窗口.此窗口是Eclipse设置项的集中营, 修改plugin.xml文件,设置首选项的扩展点: pl ...
- delta
1,安装synplyfy:综合工程,便于学习(模块间的关系,数据流向) 2,安装wps office: www.wps.com/linux,论坛有安装方法和依赖包处理 3,安装kmplayer: 4 ...
- php gd 生成日历图
<?php //如果您提交了时间则显示您提交年月的日历,否则显示当前月份日历 if (isset($_GET['month']) && isset($_GET['year'])) ...
- 【转】android自动化测试之MonkeyRunner使用实例(三)
一.使用CMD命令打开模拟器 运行monkeyrunner之前必须先运行相应的模拟器或连上设备,不然monkeyrunner无法连接设备. 1.1 用Elipse打开Android模拟器或在CMD中 ...
- 关于Extjs使用window.opener报错
项目中使用window.opener 刷新父窗口表格,父窗口表格IE8报错, window.opener.Ext.getCmp('SalesCompanyGridPanel').getStore(). ...
- ASP.NET MVC总结
一.概述 1.单元测试的NUnit, MBUnit, MSTest, XUnit以及其他的框架 2.ASP.NET MVC 应用的默认目录结构有三个顶层目录: Controllers.Models.V ...
- [转]第一章 Windows Shell是什么 【来源:http://blog.csdn.net/wangqiulin123456/article/details/7987862】
一个操作系统外壳的不错的定义是它是一个系统提供的用户界面,它允许用户执行公共的任务,如访问文件系统,导出执行程序,改变系统设置等.MS-DOS有一个Command.COM扮演着这个角色.然而Windo ...