[Oracle 11g r2(11.2.0.4.0)]Oracle Golden Gate Training-workshop2
来源:互联网 发布:网络歌曲小鸭子2 编辑:程序博客网 时间:2024/05/16 05:49
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,showchEXTRACT EXT1 Last Started 2017-10-30 18:50 Status RUNNINGCheckpoint 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/exCSN 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.825Header: Version = 2 Record Source = A Type = 10 # Input Checkpoints = 1 # Output Checkpoints = 1File Information: Block Size = 2048 Max Blocks = 100 Record Length = 2048 Current Offset = 0Configuration: Data Source = 3 Transaction Integrity = 1 Task Type = 0Status: 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 detailEXTRACT EXT1 Last Started 2017-10-30 18:50 Status RUNNINGCheckpoint 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:48Current directory /u01/ggReport file /u01/gg/dirrpt/EXT1.rptParameter file /u01/gg/dirprm/ext1.prmCheckpoint file /u01/gg/dirchk/EXT1.cpeProcess file /u01/gg/dirpcs/EXT1.pceStdout file /u01/gg/dirout/EXT1.outError log /u01/gg/ggserr.log
可见,检查点文件在‘/u01/gg/dirchk/EXT1.cpe’,这是个二进制文件,我们可以dump出来看看,
hexdump -Cv -n 4096 /u01/gg/dirchk/EXT1.cpe >/tmp/ext1.txt
- [Oracle 11g r2(11.2.0.4.0)]Oracle Golden Gate Training-workshop2
- [Oracle 11g r2(11.2.0.4.0)]Oracle Golden Gate Training-workshop1
- [Oracle 11g r2(11.2.0.4.0)]Oracle Golden Gate Training-workshop3
- [Oracle 11g r2(11.2.0.4.0)]Oracle Golden Gate Training-workshop4
- [Oracle 11g r2(11.2.0.4.0)]Oracle Golden Gate Training-workshop5
- [Oracle 11g r2(11.2.0.4.0)]Oracle Golden Gate Training-workshop6
- Oracle 11g Golden Gate DDL单向同步实例演示
- Oracle Golden Gate 简述
- Oracle Golden Gate
- oracle Golden Gate
- Oracle Golden Gate 发展史
- Oracle Golden Gate 简述
- Oracle Golden Gate 搭建
- Oracle Golden Gate 配置
- Oracle Golden Gate
- Oracle Golden Gate 11gR2 单向复制
- Oracle Golden Gate 系列 小结
- Oracle Golden Gate - Install Oracle GoldenGate 11.2.1.0 on Linux
- 网络安全-SQL注入
- HTTP协议
- 提取兴趣区域并进行缩放后填充
- libxxx.so- text relocations问题的终极解决方案
- QoS基础及技术原理——1
- [Oracle 11g r2(11.2.0.4.0)]Oracle Golden Gate Training-workshop2
- 使用内嵌TOMCAT开发spring mvc 项目
- Netty学习心得 netty服务端和客户端的连接
- C 位域
- 算法:从键盘输入能够构成三角形的三条边长,编程计算该三角形的面积
- 文件COPY
- android 编辑标签,在一个文本框输入标签回车添加退格删除
- [bzoj3012][Usaco2015 Dec][字典树][Top序]First!
- 1102. Invert a Binary Tree (25)