[Oracle 11g r2(11.2.0.4.0)]Oracle Golden Gate Training-workshop2

learn by doing,less theory,more results.

internal mechanism of ogg:

这里写图片描述
在上一章已经把ogg基本安装,配置完成。接下来讲解internal mechanism (内部机制)。
ogg跟db关系:
这里写图片描述

ogg extract 内部组成:
这里写图片描述
1.通过extract参数文件,登录数据库,直接读取online redo log和archive log日志内容,优先读取online redo log日志,如果找不到数据则去读取archive log日志,如果还是找不到想要的数据则通过redo parsing去解析redo log日志,然后写到trail 文件, data pump读取trail文件传输到远端。

when extract encounters the start of a tranaction in the redolog(in oracle,this is the first execute DML SQL statement) it satrts caahing to memory all of the data that is spectified to be captured for that tranaction.

extract must cache a transaction even if it contains no capture data,because future operation of that transaction might contain data that is to be captured.
由此可见,extract捕获所有已提交的transaction数据放在内存中(并不是只捕获bobo下的表事务数据),并写到trail文件中。如果一个事务回退,直接释放内存,并不会写到trail文件中。由此可见trail文件中存放的都是已提交的事务。

extract checkpoint :

查看extract进程当前检查点信息:

GGSCI (localhost.localdomain) 3> info ext1,showch

EXTRACT    EXT1      Last Started 2017-10-30 18:50   Status RUNNING
Checkpoint Lag       00:00:00 (updated 00:00:10 ago)
Log Read Checkpoint  Oracle Redo Logs
                     2017-10-31 20:27:29  Seqno 22, RBA 13527552
                     SCN 0.1178527 (1178527)


Current Checkpoint Detail:

Read Checkpoint #1

  Oracle Redo Log

  Startup Checkpoint (starting position in the data source):
    Thread #: 1
    Sequence #: 10
    RBA: 3072016
    Timestamp: 2017-10-30 18:48:44.000000
    SCN: Not available
    Redo File: 

  Recovery Checkpoint (position of oldest unprocessed transaction in the data source):
    Thread #: 1
    Sequence #: 22
    RBA: 13526544
    Timestamp: 2017-10-31 20:27:29.000000
    SCN: 0.1178526 (1178526)
    Redo File: /u01/app/oracle/oradata/SOURCE/onlinelog/o1_mf_1_dzf7qdmj_.log

  Current Checkpoint (position of last record read in the data source):
    Thread #: 1
    Sequence #: 22
    RBA: 13527552
    Timestamp: 2017-10-31 20:27:29.000000
    SCN: 0.1178527 (1178527)
    Redo File: /u01/app/oracle/oradata/SOURCE/onlinelog/o1_mf_1_dzf7qdmj_.log

  BR Previous Recovery Checkpoint:
    Thread #: 0
    Sequence #: 0
    RBA: 0
    Timestamp: 2017-10-30 18:50:31.825487
    SCN: Not available
    Redo File: 

  BR Begin Recovery Checkpoint:
    Thread #: 1
    Sequence #: 22
    RBA: 3069440
    Timestamp: 2017-10-31 18:51:07.000000
    SCN: 0.1171143 (1171143)
    Redo File: 

  BR End Recovery Checkpoint:
    Thread #: 1
    Sequence #: 22
    RBA: 3069440
    Timestamp: 2017-10-31 18:51:07.000000
    SCN: 0.1171143 (1171143)
    Redo File: 

Write Checkpoint #1

  GGS Log Trail

  Current Checkpoint (current write position):
    Sequence #: 0
    RBA: 1763
    Timestamp: 2017-10-31 20:28:06.104919
    Extract Trail: /u01/gg/dirdat/ex

CSN state information:
  CRC: 6-9F-5A-B9
  Latest CSN: 1171852
  Latest TXN: 1.26.825
  Latest CSN of finished TXNs: 1171852
  Completed TXNs: 1.26.825

Header:
  Version = 2
  Record Source = A
  Type = 10
  # Input Checkpoints = 1
  # Output Checkpoints = 1

File Information:
  Block Size = 2048
  Max Blocks = 100
  Record Length = 2048
  Current Offset = 0

Configuration:
  Data Source = 3
  Transaction Integrity = 1
  Task Type = 0

Status:
  Start Time = 2017-10-30 18:50:32
  Last Update Time = 2017-10-31 20:28:06
  Stop Status = A
  Last Result = 400
SQL> select group#,sequence#,status from v$log;

    GROUP#  SEQUENCE# STATUS
---------- ---------- ----------------
         1         22 CURRENT
         2         20 INACTIVE
         3         21 INACTIVE

在第一章配置extract的时候,有一个begin now参数,记住当前时间并转换成scn

SQL> select to_char(scn_to_timestamp(1178527),'yyyy-mm-dd hh24:mm:ss') from dual;

TO_CHAR(SCN_TO_TIME
-------------------
2017-10-31 20:10:28

解析:
RBA 13527552:读取第22号日志的13527552位置
Read Checkpoint #1:单节点是thread 1,如果是rac 双节点 这里就不一定为1.
startup checkpoint - the first checkpoint that is made in the data source when the process starts.
recovery checkpoint - the position in the data source of the record containing the oldest transaction not yet processes by extract.
current checkpoint - the postition of the last record read by extract in the data source.
RBA(relative byte address):相对于文件头的偏移量,已发送字节数位置,可以通过rba得到某个字节数。

这里写图片描述
write checkpoint 使用rba参考位置
redo stream 使用scn参考
rc 记录数据库最早发生事务的scn,事务提交rc就会向前移动,并把对应的数据从内存写到trail文件,释放内存。如果数据库突然宕机,只要最早的事务未提交,rc就不会变化。

GGSCI (localhost.localdomain) 4> info ext1 detail

EXTRACT    EXT1      Last Started 2017-10-30 18:50   Status RUNNING
Checkpoint Lag       00:00:00 (updated 00:00:10 ago)
Log Read Checkpoint  Oracle Redo Logs
                     2017-11-01 07:44:00  Seqno 26, RBA 10543616
                     SCN 0.1240880 (1240880)

  Target Extract Trails:

  Remote Trail Name                                Seqno        RBA     Max MB

  /u01/gg/dirdat/ex                                    0       1763        300

  Extract Source                          Begin             End             

  /u01/app/oracle/oradata/SOURCE/onlinelog/o1_mf_2_dzf7qdqs_.log  2017-10-30 18:48  2017-11-01 07:44
  Not Available                           * Initialized *   2017-10-30 18:48


Current directory    /u01/gg

Report file          /u01/gg/dirrpt/EXT1.rpt
Parameter file       /u01/gg/dirprm/ext1.prm
Checkpoint file      /u01/gg/dirchk/EXT1.cpe
Process file         /u01/gg/dirpcs/EXT1.pce
Stdout file          /u01/gg/dirout/EXT1.out
Error log            /u01/gg/ggserr.log

可见,检查点文件在‘/u01/gg/dirchk/EXT1.cpe’,这是个二进制文件,我们可以dump出来看看,

hexdump -Cv -n 4096  /u01/gg/dirchk/EXT1.cpe >/tmp/ext1.txt
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
前言 1 简介 课程目标1-2 建议日程表1-3 课程目标1-4 Oracle 产品和服务1-5 Oracle Database 10g:“g”代表网格1-6 Oracle 数据库体系结构1-8 数据库结构1-9 Oracle 内存结构1-10 进程结构1-12 Oracle 实例管理1-13 服务器进程和数据库缓冲区高速缓存1-14 物理数据库结构1-15 表空间和数据文件1-17 SYSTEM 和SYSAUX 表空间1-18 段、区和块1-19 逻辑和物理数据库结构1-20 课程示例:HR 方案1-22 数据库体系结构:结构化组件概要1-23 小结1-24 2 安装Oracle 数据库软件 课程目标2-2 Oracle 数据库管理员的任务2-3 用于管理Oracle 数据库的工具2-4 安装:系统要求2-6 检查系统要求2-7 灵活体系结构(OFA) 2-8 使用灵活体系结构2-9 设置环境变量2-11 Oracle Universal Installer (OUI) 2-13 安装Oracle 软件2-14 数据库配置选项2-15 执行配置脚本2-16 完成安装2-17 高级安装选项2-18 安装选项:无提示模式2-19 小结2-20 练习概览:安装Oracle 软件2-21 目录 iii 3 创建Oracle 数据库 课程目标3-2 计划数据库3-3 数据库:示例3-4 Database Configuration Assistant (DBCA) 3-5 使用DBCA 创建数据库3-6 口令管理3-12 创建数据库设计模板3-13 使用DBCA 删除数据库3-14 小结3-16 练习概览:使用DBCA 3-17 4 管理Oracle 实例 课程目标4-2 管理框架4-3 启动和停止Database Control 4-4 Oracle Enterprise Manager 4-5 访问Oracle Enterprise Manager 4-6 数据库主页4-7 使用SQL*Plus 和iSQL*Plus 访问数据库4-8 使用iSQL*Plus 4-9 为了以SYSDBA 和SYSOPER 身份进行访问而设置iSQL*Plus 4-10 使用SQL*Plus 4-12 从Shell 脚本调用SQL*Plus 4-13 从SQL*Plus 调用SQL 脚本4-14 初始化参数文件4-15 简化初始化参数4-16 查看和修改初始化参数4-18 数据库启动和关闭4-19 启动Oracle 数据库实例4-20 启动Oracle 数据库实例:NOMOUNT 4-21 启动Oracle 数据库实例:MOUNT 4-22 启动Oracle 数据库实例:OPEN 4-23 关闭Oracle 数据库实例4-24 关闭模式4-25 SHUTDOWN 选项4-26 使用SQL*Plus 启动和关闭4-29 查看预警日志4-30 查看预警历史记录4-31 动态性能视图4-32 iv 动态性能视图:用法示例4-33 动态性能视图:注意事项4-34 小结4-35 练习概览:管理Oracle 实例4-36 5 管理数据库存储结构 课程目标5-2 存储结构5-3 如何存储表数据5-4 数据库块的结构5-5 表空间和数据文件5-6 Oracle 管理文件(OMF) 5-7 表空间中的空间管理5-8 浏览存储结构5-9 创建新表空间5-10 本地管理表空间的存储5-12 预配置数据库中的表空间5-14 变更表空间5-16 表空间操作5-18 删除表空间5-20 查看表空间信息5-21 采集存储信息5-22 查看表空间内容5-23 扩大数据库5-24 什么是自动存储管理5-25 ASM:主要功能和优点5-26 ASM:概念5-27 小结5-28 练习概览:管理数据库存储结构5-29 6 管理用户安全性 课程目标6-2 数据库用户帐户6-3 预定义帐户:SYS 和SYSTEM 6-5 创建用户6-6 验证用户6-7 管理员验证6-9 解除用户帐户的锁定并重置口令6-10 权限6-11 系统权限6-12 对象权限6-14 v 撤销具有ADMIN OPTION 的系统权限6-15 撤销具有GRANT OPTION 的对象权限6-16 角色的作用6-17 将权限分配给角色以及将角色分配给用户6-18 预定义角色6-19 创建角色6-20 保护角色6-21 将角色分配给用户6-22 概要文件和用户6-23 实施口令安全功能6-25 创建口令概要文件6-27 提供的口令验证函数:VERIFY_FUNCTION 6-28 将限额分配给用户6-29 小结6-31 练习概览:管理用户6-32 7 管理方案对象 课程目标7-2 什么是方案7-3 访问方案对象7-5 命名数据库对象7-6 指定表中的数据类型7-8 创建和修改表7-11 了解数据完整性7-13 定义约束条件7-15 违反约束条件7-16 约束条件状态7-17 约束条件检查7-19 使用SQL 创建约束条件:示例7-20 查看表中的列7-21 查看表的内容7-22 表操作7-23 删除表7-24 截断表7-25 索引7-26 索引类型7-27 B 树索引7-28 位图索引7-30 索引选项7-32 创建索引7-34 vi 什么是视图7-35 创建视图7-36 序列7-37 创建序列7-38

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值