再次遇到OGG 异常:

归档丢失,OGG 不能找到需要的归档文件.

该表完整expdp 导出评估为 110G,了解到只有插入操作,所以只把归档丢失期间的数据补到目标端就好。

1. 清理目标端 2019/07/11 18:00 之后数据

--目标端
SQL>
select count(1) from table1 where GEN_TIME>=to_date('20190711 18:00:00','YYYYMMDD HH24:MI:SS');
delete from table1 where GEN_TIME>=to_date('20190711 18:00:00','YYYYMMDD HH24:MI:SS');
COMMIT;

2. 完成2019/07/11 18:00 之后数据的补充

  • 查询SCN

    select to_char(current_scn) from v$database; --16253916840
  • 导出数据

    DATE=`date +'%Y%m%d'`
    expdp userid=source/pass directory=expdir tables=table1 QUERY=table1:\"where GEN_TIME\>=to_date\(\'20190711 18:00:00\',\'YYYYMMDD HH24:MI:SS\'\)\" filesize=10G dumpfile=initogg$DATE%U.dmp logfile=initogg$DATE.log cluster=n FLASHBACK_SCN=16253916840
  • SCP 到目标端

    scp initogg$DATE*.dmp ogg@target:/expdir
  • 目标端导入

    DATE=`date +'%Y%m%d'`
    impdp target/pass directory=expdir remap_schema=source:target dumpfile=initogg$DATE%U.dmp logfile=impdp_initogg$DATE.log table_exists_action=append
  • 验证数据

    --source
    select count(1) from table1 as of scn 16253916840;
    --target
    select count(1) from table1;

    数据一致,该SCN后的数据通过OGG同步即可。

3. Source 端OGG 进程处理

  • Extract 进程处理

    GGSCI> ALTER EXTRACT EXT1 ,ETROLLOVER
    GGSCI> info exttrail *
          Extract Trail: /ogg/dirdat/ra
                Extract: DP1
                  Seqno: 2900
                    RBA: 15694
              File Size: 100M
          Extract Trail: ./dirdat/la
                Extract: EXT1
                  Seqno: 2911 #注意这里新的Seqno 和 RBA
                    RBA: 0 #下面Dump进程用到
              File Size: 100M
    #9点到现在归档是连续的,从今天9点的归档开始抽取,前面丢失的不再需要
    GGSCI> ALTER EXTRACT EXT1 ,BEGIN 09:00
    GGSCI> START EXT1
    GGSCI> INFO EXTTRAIL *
          Extract Trail: /ogg/dirdat/ra
                Extract: DP1
                  Seqno: 2900
                    RBA: 15694
              File Size: 100M
          Extract Trail: ./dirdat/la
                Extract: EXT1
                  Seqno: 2911
                    RBA: 19070157 #RBA变更,已有数据被抽取到trail文件
              File Size: 100M
  • DB 进程处理

    GGSCI> info DP1
    EXTRACT    DP1  Last Started 2019-07-13 14:57   Status STOPPED
    Checkpoint Lag       00:00:00 (updated 17:00:23 ago)
    Log Read Checkpoint  File ./dirdat/la002910 #使用的旧的trail文件
                        2019-07-11 20:39:24.000000  RBA 31497286
    GGSCI> ALTER EXTRACT DP1, EXTSEQNO 2911, EXTRBA 0 #切换到Extract使用的新文件
    GGSCI> info DP1
    EXTRACT    DP1  Initialized   2019-07-17 11:11   Status STOPPED
    Checkpoint Lag       00:00:00 (updated 00:00:06 ago)
    Log Read Checkpoint  File ./dirdat/la002911
                        First Record  RBA 0
    #启动Dump进程
    GGSCI> START DP1
    GGSCI> INFO DP1
    EXTRACT    DP1  Last Started 2019-07-17 11:12   Status RUNNING
    Checkpoint Lag       00:00:00 (updated 00:00:08 ago)
    Log Read Checkpoint  File ./dirdat/la002911
                        2019-07-17 11:12:50.000000  RBA 19537151 #需等一会儿才有变化
    GGSCI> INFO EXTTRAIL *
          Extract Trail: /ogg/dirdat/ra
                Extract: DP1
                  Seqno: 2901 #Dump进程启动后自动切换了远端trail文件
                    RBA: 19581384
              File Size: 100M
          Extract Trail: ./dirdat/la
                Extract: EXT1
                  Seqno: 2911
                    RBA: 19601526
              File Size: 100M
  • 查看Source 端状态都已正常

    GGSCI> INFO ALL #相关进程都处于Running 状态,且无延迟

4. Target 端OGG 进程处理

基于SCN 启动Replicat 进程

GGSCI> info RP1
REPLICAT   RP1  Last Started 2019-07-12 06:00   Status STOPPED
Checkpoint Lag       00:00:00 (updated 17:03:31 ago)
Log Read Checkpoint  File ./dirdat/ra002900 #当前还在使用2900
                    2019-07-11 20:39:24.096454  RBA 15694
#从指定SCN 开始应用
GGSCI> START REPLICAT RP1, ATCSN 16253916840
GGSCI> info RP1
REPLICAT   RP1  Last Started 2019-07-17 11:15   Status RUNNING
Checkpoint Lag       00:00:00 (updated 00:00:01 ago)
Log Read Checkpoint  File ./dirdat/ra002901 #已经自动切换到了2901
                    2019-07-17 11:15:20.967710  RBA 19923873

Replicat 在2900没找到需要的SCN,在2901里才能找到,所以自动完成了切换

5. 数据验证

--source
select count(1) from table1;
--target
select count(1) from table1;

【故障处理】-OGG 丢失归档20190717的更多相关文章

  1. 【OGG 故障处理】 丢失归档恢复

    OGG 有两天由于某种原因没有启动,而这段时间的备份文件缺失了一部分归档.恢复过程记录如下: GGSCI (xxxx) > info all Program Status Group Lag a ...

  2. dataguard 归档丢失(主库中无此丢失归档处理),备库基于SCN恢复

    dataguard 归档丢失(主库中无此丢失归档处理),备库基于SCN恢复 环境: OS: CentOS 6.5 DB: Oracle 10.2.0.5 1.主备库环境 主库: SQL> sel ...

  3. dataguard丢失归档日志处理

    检查alert日志发现报错如下 Wed Mar 27 15:40:30 2019Managed Standby Recovery not using Real Time ApplyParallel M ...

  4. Oracle DataGuard主库丢失归档日志后备库的RMAN增量恢复一例

    第一部分  问题描述和环境状态确认 ----1. 问题场景 Oracle DataGuard主库丢失archivelog,如何不重建备库完成同步? 在Oracle DataGuard主从同步过程中可能 ...

  5. OGG学习笔记03-单向复制简单故障处理

    OGG学习笔记03-单向复制简单故障处理 环境:参考:OGG学习笔记02-单向复制配置实例 实验目的:了解OGG简单故障的基本处理思路. 1. 故障现象 故障现象:启动OGG源端的extract进程, ...

  6. Oracle主库归档丢失,备库日志有gap,在不重建备库的情况下,恢复备库

    本文主要描述Oracle备库日志与主库日志之间有gap,切主库这部分gap的归档日志已经删除或丢失,如何在不重建备库的情况下,恢复备库. 欢迎转载,请注明作者.出处. 作者:张正 blog:http: ...

  7. OGG学习笔记03

    OGG学习笔记03-单向复制简单故障处理 环境:参考:OGG学习笔记02-单向复制配置实例实验目的:了解OGG简单故障的基本处理思路. 1. 故障现象故障现象:启动OGG源端的extract进程,da ...

  8. OGG学习笔记04-OGG复制部署快速参考

    OGG学习笔记04-OGG复制部署快速参考 源端:Oracle 10.2.0.5 RAC + ASM 节点1 Public IP地址:192.168.1.27 目标端:Oracle 10.2.0.5 ...

  9. OGG学习笔记05-OGG的版本

    刚接触OGG的时候,很容易被众多的版本搞晕,虽然官方有提供各版本对应认证OS和DB的表格. 个人认为一个比较简单的方式,是直接去edelivery.oracle.com下载OGG,选定一个大版本后,这 ...

随机推荐

  1. python web 框架

    Web框架(Web framework)是一种开发框架,用来支持动态网站.网络应用和网络服务的开发. wsgiref模块 wsgiref模块就是python基于wsgi协议(Web Server Ga ...

  2. 动态调用webservice时 ServiceDescriptionImporter类在vs2010无法引用的解决方法 (转)

    本文转自:http://blog.csdn.net/limlimlim/article/details/8647038 [导读]ServiceDescriptionImporter是创建Web Ser ...

  3. 《第一本Docker书》学习笔记——第4章 使用Docker镜像和仓库

    4.2 列出镜像 使用docker images命令: sudo docker images 本地镜像都保存在Docker宿主机的/var/lib/docker目录下. 也可以在/var/lib/do ...

  4. JS正则匹配邮箱格式

    观察一些邮箱格式,有些邮箱格式简单,有些复杂,在网上找了个邮箱的正则表达式,分析一下邮箱的规则.该表达式:/^\w+([\.\-]\w+)*\@\w+([\.\-]\w+)*\.\w+$/ 拆分:[1 ...

  5. 【Anaconda】关于conda使用环境未被激活的问题

    前言 在win10系统中安装Anaconda,并创建虚拟环境,但是不明白为什么切换环境之后并未激活要使用的虚拟环境. conda常用命令 activate // 切换到base环境 activate ...

  6. PS更换证件照背景颜色

    同学们大家好,我是阿宝老师,今天给大家讲一下如何使用PS更换证件照背景色. 目前使用PS更换证件照底片有三种方式,这三种方式虽有不同,但是最终目的都是将人像从背景中抠出来.扣取人像有三种方法可供选取, ...

  7. NET架构

    .NET架构开发应知应会 .NET程序是基于.NET Framework..NET Core.Mono.[.NET实现]开发和运行的 ,定义以上[.NET实现]的标准规范称为.NET Standard ...

  8. 重磅!滴滴跨端框架Chameleon 1.0正式发布

    滴滴在 GitHub 上开源的跨端解决方案 Chameleon(简写 CML)正式发布 1.0 版本,中文名卡梅龙:中文意思变色龙,意味着就像变色龙一样能适应不同环境的企业级跨端整体解决方案,具有易用 ...

  9. {"aa":null} 如何能转化为 {"aa":{}}

    一个同事问的一个功能需求:{"aa":null} 如何能转化为 {"aa":{}}因为需求暂时不明确,暂时先完成这样的转换.使用的是FastJson1.2.7 ...

  10. rdkafka swoole

    1.yum install php-devel php-pear 2. wget http://pear.php.net/go-pear.phar 3.PHP go-pear.phar 4.cp /r ...