热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

如何使用RMAN增量备份恢复dataguardloggap(日志断档)

主库查询最小scn信息:SQLcolcurrent_scnfor999999999999999SQLSELECTCURRENT_SCNFROMV$DATABASE;selectmin(fhscn)fromx$kcvfh;selectmin(f.fhscn)fromx$kcvfhf,v$datafiledwheref.hxfild.file#andd.enabled!READONLY;CURRENT_S

主库查询最小scn 信息: SQL col current_scn for 999999999999999SQL SELECT CURRENT_SCN FROM V$DATABASE;select min(fhscn) from x$kcvfh;select min(f.fhscn) from x$kcvfh f, v$datafile dwhere f.hxfil =d.file#and d.enabled != READ ONLY ;CURRENT_S

主库查询最小scn 信息:
SQL> col current_scn for 999999999999999
SQL> SELECT CURRENT_SCN FROM V$DATABASE;

select min(fhscn) from x$kcvfh;

select min(f.fhscn) from x$kcvfh f, v$datafile d
where f.hxfil =d.file#
and d.enabled != 'READ ONLY' ;
CURRENT_SCN
----------------
12614205226673

MIN(FHSCN)
----------------
12614205076072

MIN(F.FHSCN)
----------------
12614205076072

+++++++++++++++++++++++++++++++++++++++++++++++=



1.----备库取消归档应用
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;


2.----备库确定 lowest scn
col current_scn for 99999999999999
SELECT CURRENT_SCN FROM V$DATABASE;

select min(fhscn) from x$kcvfh;

select min(f.fhscn) from x$kcvfh f, v$datafile d
where f.hxfil =d.file#
and d.enabled != 'READ ONLY' ;

取上述查询中的最小值

SQL> col current_scn for 999999999999999999
SQL> SELECT CURRENT_SCN FROM V$DATABASE;

CURRENT_SCN
-------------------
12611050666604

SQL> select min(fhscn) from x$kcvfh;

MIN(FHSCN)
----------------
12611050666605

SQL> select min(f.fhscn) from x$kcvfh f, v$datafile d
where f.hxfil =d.file#
and d.enabled != 'READ ONLY' ; 2 3

MIN(F.FHSCN)
----------------
12611050666605

3.-----on primary db 端根据第2步中获取的最小scn 来进行增量备份
BACKUP INCREMENTAL FROM SCN 12611050666604 DATABASE FORMAT '/lixora/ForStandby_%U' tag 'FORSTANDBY';


4.-----拷贝备份到 备库
$scp ForStandby_07pqprm4_1_1 192.168.0.10:/tmp


5.----on standby db 在备库端注册备份片,注意用户属主,权限
RMAN> CATALOG START WITH '/lixora/ForStandby';


6.----执行恢复
RMAN> RECOVER DATABASE NOREDO;




7.-----on primary db 生成新的standby 控制文件
RMAN> BACKUP CURRENT CONTROLFILE FOR STANDBY FORMAT '/lixora/ForStandbyCTRL.bck';



8.----把主库端生成的standby 控制文件拷贝到备库,注意用户属主,权限

RMAN> BACKUP CURRENT CONTROLFILE FOR STANDBY FORMAT '/lixora/ForStandbyCTRL.bck';

scp /lixora/ForStandbyCTRL.bck 192.168.0.10:/tmp


9.------备份备库数据文件信息,用于在恢复新的standby 控制文件后比对
spool datafile_names_step8.txt
set lines 200
col name format a60
select file#, name from v$datafile order by file# ;
spool off



10.------on standby Db 恢复新的standby 控制文件

RMAN> SHUTDOWN IMMEDIATE ;
RMAN> STARTUP NOMOUNT;
RMAN> RESTORE STANDBY CONTROLFILE FROM '/tmp/ForStandbyCTRL.bck';



11.-----更新控制文件中的数据文件信息
使新的standby 控制文件生效
RMAN> SHUTDOWN;
RMAN> STARTUP MOUNT;

CATALOG START WITH '+DATA/zhglptdg/datafile/';


12.------on primary db。确保在备库发生日志gap 后,主库没有添加过新的数据文件。
SELECT FILE#, NAME FROM V$DATAFILE WHERE CREATION_CHANGE# > 12611050666604;

如果有记录,则不能进行witch 操作,可以参考一下文档来恢复:
Note 1531031.1 Steps to perform for Rolling forward a standby database using RMAN incremental backup when datafile is added to primary


13.-----重命名数据文件
RMAN> SWITCH DATABASE TO COPY;


14.-----再次确认在恢复增量备份片后主库和备库scn 差距没有太大
SQL> col current_scn for 99999999999999
SELECT CURRENT_SCN FROM V$DATABASE;

select min(fhscn) from x$kcvfh;

select min(f.fhscn) from x$kcvfh f, v$datafile d
where f.hxfil =d.file#
and d.enabled != 'READ ONLY' ;

CURRENT_SCN
---------------
12614205662375

MIN(FHSCN)
----------------
12614205076072

MIN(F.FHSCN)
----------------
12614205076072


15.------ On standby database, 清理standby 日志组
select * from v$standby_log;

SQL> ALTER DATABASE CLEAR LOGFILE GROUP 1;
SQL> ALTER DATABASE CLEAR LOGFILE GROUP 2;
SQL> ALTER DATABASE CLEAR LOGFILE GROUP 3;

16.------启动redo data apply
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT;

如果遇到一些由于设置 nologgling 而导致部分数据丢失,可以安装下述方法来进行恢复
To resolve NOLOGGING operations only, see Note 958181.1.
In addition to this information, see the online documentation:
10.2: http://download.oracle.com/docs/cd/B19306_01/server.102/b14239/scenarios.htm#CIHIAADC
11.1: http://download.oracle.com/docs/cd/B28359_01/server.111/b28294/rman.htm#SBYDB00759
11.2: http://download.oracle.com/docs/cd/E11882_01/server.112/e17022/rman.htm#CIHIAADC


后记
如果要启用实时应用,需要在备库添加standby redo log,大小应和主库一样,且比主库多一组;


ALTER DATABASE add standby LOGFILE GROUP 6 size 500M;
ALTER DATABASE add standby LOGFILE GROUP 7 size 500M;
ALTER DATABASE add standby LOGFILE GROUP 8 size 500M;
ALTER DATABASE add standby LOGFILE GROUP 9 size 500M;


启用命令:
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE; oracle 10g standby database 实时应用 redo 数据 如何确保dg 已经正常,后台日志类似如下:
Mon Dec 22 10:03:04 CST 2014
RFS[1]: Archived Log: '+DATA/lixora/archivelog/1_23094_790186477.dbf'
Mon Dec 22 10:03:25 CST 2014
Media Recovery Log +DATA/lixora/archivelog/1_23094_790186477.dbf
Media Recovery Waiting for thread 1 sequence 23095 (in transit)
Mon Dec 22 10:05:53 CST 2014
RFS[2]: Archived Log: '+DATA/lixora/archivelog/1_23095_790186477.dbf'
Primary database is in MAXIMUM PERFORMANCE mode
RFS[2]: No standby redo logfiles of size 1024000 blocks exist
Mon Dec 22 10:05:55 CST 2014
Media Recovery Log +DATA/zhglptdg/archivelog/1_23095_790186477.dbf
Media Recovery Waiting for thread 1 sequence 23096 (in transit)
Mon Dec 22 10:05:57 CST 2014
RFS[2]: Archived Log: '+DATA/lixora/archivelog/1_23096_790186477.dbf'
Primary database is in MAXIMUM PERFORMANCE mode
RFS[2]: No standby redo logfiles of size 1024000 blocks exist
Mon Dec 22 10:06:00 CST 2014
Media Recovery Log +DATA/lixora/archivelog/1_23096_790186477.dbf
Media Recovery Waiting for thread 1 sequence 23097 (in transit)

类似一下日志,表明日志只是传过来,但是没有应用:
Tue Dec 16 17:28:48 CST 2014
Primary database is in MAXIMUM PERFORMANCE mode
RFS[3]: Successfully opened standby log 7: '+DATA/lixora/onlinelog/group_7.360.857131345'
Tue Dec 16 18:57:12 CST 2014
Primary database is in MAXIMUM PERFORMANCE mode
RFS[3]: Successfully opened standby log 8: '+DATA/lixora/onlinelog/group_8.361.857131375'
Tue Dec 16 20:12:13 CST 2014
Primary database is in MAXIMUM PERFORMANCE mode
RFS[3]: Successfully opened standby log 7: '+DATA/lixora/onlinelog/group_7.360.857131345'
Tue Dec 16 21:40:39 CST 2014
Primary database is in MAXIMUM PERFORMANCE mode
RFS[3]: Successfully opened standby log 8: '+DATA/lixora/onlinelog/group_8.361.857131375'

如何可以确保dg 正常:
1)v$archive_log.applied 是否为yes
2)主库切换日志:ALTER system swtich logfile;
看备库v$database.CURRENT_SCN 是否有增长?
推荐阅读
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 构建基于BERT的中文NL2SQL模型:一个简明的基准
    本文探讨了将自然语言转换为SQL语句(NL2SQL)的任务,这是人工智能领域中一项非常实用的研究方向。文章介绍了笔者在公司举办的首届中文NL2SQL挑战赛中的实践,该比赛提供了金融和通用领域的表格数据,并标注了对应的自然语言与SQL语句对,旨在训练准确的NL2SQL模型。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • 本文将详细介绍在Windows 7环境下,检查U盘启动盘是否制作成功的多种方法,包括通过BIOS设置和使用模拟启动工具。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
  • 本文介绍如何使用 NSTimer 实现倒计时功能,详细讲解了初始化方法、参数配置以及具体实现步骤。通过示例代码展示如何创建和管理定时器,确保在指定时间间隔内执行特定任务。 ... [详细]
  • 本文介绍了在Windows环境下使用pydoc工具的方法,并详细解释了如何通过命令行和浏览器查看Python内置函数的文档。此外,还提供了关于raw_input和open函数的具体用法和功能说明。 ... [详细]
  • 本文详细介绍了如何使用ActionScript 3.0 (AS3) 连接并操作MySQL数据库。通过具体的代码示例和步骤说明,帮助开发者理解并实现这一过程。 ... [详细]
  • 题目Link题目学习link1题目学习link2题目学习link3%%%受益匪浅!-----&# ... [详细]
  • 本文探讨了 C++ 中普通数组和标准库类型 vector 的初始化方法。普通数组具有固定长度,而 vector 是一种可扩展的容器,允许动态调整大小。文章详细介绍了不同初始化方式及其应用场景,并提供了代码示例以加深理解。 ... [详细]
  • 网络运维工程师负责确保企业IT基础设施的稳定运行,保障业务连续性和数据安全。他们需要具备多种技能,包括搭建和维护网络环境、监控系统性能、处理突发事件等。本文将探讨网络运维工程师的职业前景及其平均薪酬水平。 ... [详细]
  • 高效解决应用崩溃问题!友盟新版错误分析工具全面升级
    友盟推出的最新版错误分析工具,专为移动开发者设计,提供强大的Crash收集与分析功能。该工具能够实时监控App运行状态,快速发现并修复错误,显著提升应用的稳定性和用户体验。 ... [详细]
  • 在即将迎来26岁生日之际,作者的人生陷入了低谷。经过近三年的硕士学习后,最终决定退学,并且面临没有工作经验的困境。尽管如此,作者依然坚定地选择为自己的人生负责。 ... [详细]
  • 使用Python在SAE上开发新浪微博应用的初步探索
    最近重新审视了新浪云平台(SAE)提供的服务,发现其已支持Python开发。本文将详细介绍如何利用Django框架构建一个简单的新浪微博应用,并分享开发过程中的关键步骤。 ... [详细]
  • 本题涉及一棵由N个节点组成的树(共有N-1条边),初始时所有节点均为白色。题目要求处理两种操作:一是改变某个节点的颜色(从白变黑或从黑变白);二是查询从根节点到指定节点路径上的第一个黑色节点,若无则输出-1。 ... [详细]
author-avatar
林志岳小行克元
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有