主库查询最小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 操作,能够參考一下文档来恢复:

rman 增量恢复 dg gap后 主库加入新数据文件

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 是否有增长?

怎样使用 RMAN 增量备份恢复 data guard log gap(日志断档)的更多相关文章

  1. 如何通过rman的增量备份恢复dataguard中standby端的数据

    很多正在使用dataguard的客户,都会遇到一个棘手的问题: 在备份端与主库同步的过程中由于网络原因或磁盘问题导致一个或多个归档日志丢失,进而dataguard同步无法继续.很多客户都选择了重新全库 ...

  2. 使用RMAN增量备份处理Dataguard因归档丢失造成的gap

    场景: 备库执行日志应用出现如下报错: Thu Mar 29 11:21:45 2018FAL[client]: Failed to request gap sequence GAP - thread ...

  3. ORACLE异机增量备份恢复

    PROD异机增量备份恢复验证实施文档 准备工作:source 源库:PROD数据库备份策略:周日0级RMAN备份,周一至周六1级差异增量备份0 4 * * 0 /data/rmanlev0.sh &g ...

  4. oracle11gRAC环境使用RMAN增量备份方案

    转摘:http://blog.itpub.net/29819001/viewspace-1320977/ [oracle@zx ~]$ rman target /Recovery Manager: R ...

  5. RMAN增量备份-备份保留策略-设置备份集属性

    RMAN增量备份:增量备份级别:0,1,2,3,4BACKUP DATABASE也是创建数据库的完整备份,但是这种备份不同于增量备份的0级备份.这种备份不包含增量备份的0级备份,并不支持在此基础上再创 ...

  6. Oracle 12 Rman增量备份

    增量备份 增量备份主要作用是仅复制自上次备份以来已更改的数据块.您可以使用RMAN创建数据文件,表空间或整个数据库的增量备份. 将增量备份作为策略的一部分的主要原因是: 用于基于增量更新备份的策略,其 ...

  7. 如何使用块更改跟踪文件估算RMAN增量备份大小 (Doc ID 1938079.1)

    How to estimate RMAN incremental backup size using block change tracking file (Doc ID 1938079.1) APP ...

  8. 中小型数据库 RMAN CATALOG 备份恢复方案(二)

    中小型数据库呈现的是数据库并发少,数据库容量小,版本功能受限以及N多单实例等特点.尽管如此,数据库的损失程度也会存在零丢失的情形.企业不愿意花太多的钱又要保证数据库的可靠稳定,可是苦煞了我这些搞DB的 ...

  9. 【转】mysql增量备份恢复实战企业案例

    来源地址:http://seanlook.com/2014/12/05/mysql_incremental_backup_example/ 小量的数据库可以每天进行完整备份,因为这也用不了多少时间,但 ...

随机推荐

  1. Numpy库应用实例——GPS定位

    背景介绍 定位系统 GPS全球定位系统(Global Positioning System)以GPS系统为例介绍卫星定位的计算方法 GPS定位的基本原理 GPS定位的基本原理是根据高速运动卫星的 ...

  2. AME_Oracle自带AME审批链详解AME Standard Handler(概念)

    2014-05-30 Created By BaoXinJian Oracle 自带了3大类,13个子类的审批链Action Type, 对应了13个标准的AME Standard Handler

  3. 谈谈CListCtrl如何调整行高

    原文链接: http://blog.csdn.net/sstower/article/details/9094939 调整CListCtrl 行高通常有3种方法: 1.设定字体2.设定图片3.处理Me ...

  4. HTTP请求流程(二)----Telnet模拟HTTP请求

    http://www.cnblogs.com/stg609/archive/2008/07/06/1237000.html 上一部分"流程简介", 我们大致了解了下HTTP请求的流 ...

  5. JEECG图表配置说明

    图表配置可以做什么? 图表配置可以通过在线配置,无需编写代码生成图形报表页面.使用highcharts.js实现,可以运行在任何现代浏览器,包括移动终端以及IE6.目前支持曲线图.柱状图等基础报表. ...

  6. 【Asp.net之旅】--因自己定义控件注冊而引发的思考

    前言 近期在开发远洋的SOA系统平台,开发使用的是.NET平台.对于Asp.net并不困难,但该系统的开发并非全然依靠Asp.net.而是自身封装好的框架.这套框架是远洋地产购买的微软的开发平台,项目 ...

  7. IIS启用GZIP压缩js、css无效的原因及解决方法

    IIS启用GZIP压缩之后,原以为可以压缩所有文件了,包括html.CSS.JS.图片这些文件,但是当我检查的时候,发现并不是这样的,压缩的只有html文件,而CSS.JS并没有压缩 在卡卡网的网站速 ...

  8. verilog中的latch到底是个啥??简直快疯了!!!!!

    在很多地方都能看到,verilog中if与case语句必须完整,即if要加上else,case后要加上default语句,以防止锁存器的发生,接下来就来说说其中原因. 一,什么是锁存器?锁存器与触发器 ...

  9. 在verilog中调用VHDL模块

    习惯了自己发现一些小问题,既然发现了,就记下来吧,不然又要忘了,这是多么悲痛的领悟. 今天在用vivado进行块设计时所生成的顶层模块居然是用VHDL语言描述的,这时郁闷了,表示只看过VHDL语法但没 ...

  10. [na]PKI公钥处理思路

    前提申明: 在使用任何基于RSA服务之前,一个实体要真实可靠的获取其他实体的公钥. 1,一个可以确认公钥身份的方案:[离线确认] 主:B做同样的事情得到A的公钥. 但是这种方法扩展性差,不可行. 2, ...