OGG_GoldenGate数据传递文件Trial(案例)

2014-03-05 Created By BaoXinjian

一、摘要


Trail文件是GoldenGate为了更有效的把数据库事务信息从源端传递到目标端

1. Trail文件处理过程

Step1. Extract进程抽取万数据以后,GoldenGate会把抽取的事务信息转换为GoldenGate特有的专有格式文件Trail

Step2. 然后Pump进程将Trail文件传输到目标端

所以目标端和源端都会存在Trail文件

2. Trail文件的分类

源端存放Trail文件,为本地Trail文件

目标端存放Trail文件,为远程Trail文件

3. Trail文件存在的意义

防止单点故障,将事物信息持久化,并使用checkpoint机制记录其读写位置

如果发生故障,数据可以根据Checkpoint记录的位置重新传输

Tail文件并不是必须的,Extract进程可以通过TCP/IP协议,直接将日志信息传输至目标端,但是不推荐,一旦发生系统故障或网络故障,可能会造成数据的丢失

4. Logdump查看工具

Logdump可以查看GoldenGate的trail文件

 

二、Tail文件查看


如何查看Process使用的Tail文件

GGSCI (odellprod.com) 6> info REP1 REPLICAT REP1 Last Started 2015-01-28 05:31 Status RUNNING Checkpoint Lag 00:00:00 (updated 00:00:01 ago) Log Read Checkpoint File /opt/oracle/ggate/dirdat/lt000001 2015-01-28 05:31:45.209626 RBA 1105

 

三、Logdump分析


1. Logdump作用

Logdump是一个GoldenGate自带的trail文件分析工具,而且能加深对GoldenGate工作原理的理解,非常值得花时间来研究它

2. Logdump常用命令

(1). Usertoken  用来显示trail文件的一些标记信息。

(2). Ggstoken  显示GoldenGate的一些标记信息。

(3). Headertoken  显示头部的标记信息。

(4). ghdr on  用来打开记录的头部信息。

(5). pos first|last| for| rev  其中pos for|rev 比较重要,用于指定在trail文件中读的方向(向上|向下)。

(6). count detail  会显示当前trail文件总的记录数量。

3. 通过Logdump工具分析Tail文件的结构

(1). 一个trail文件结构

a. 文件头部信息

b. 记录的头部信息

c. 记录的详细信息

(2). 其他要点

a. GoldenGate是以事物为单位处理记录的,所以trail文件记录的事件为commit的时间

b. Trail文件中的处在同一事物的record, 由I/O time和Audit RBA值唯一确定

c. TransInd记录当前的record处在当前事物的哪个部分

 

四、Logdump的分析案例


案例:查看当前Process正在处理的进程

Step1. 查看logdump程序位置,并调用

[ggate@odellprod ggate]$ pwd /opt/oracle/ggate [ggate@odellprod ggate]$ ls logdump logdump [ggate@odellprod ggate]$ ./logdump

Step2. 查看process正在处理的trail文件和rba

GGSCI (odellprod.com) 6> info REP1 REPLICAT REP1 Last Started 2015-01-28 05:31 Status RUNNING Checkpoint Lag 00:00:00 (updated 00:00:01 ago) Log Read Checkpoint File /opt/oracle/ggate/dirdat/lt000001 2015-01-28 05:31:45.209626 RBA 88381352

Step3. 打开该trail文件,并分析该文件

Logdump 342 >open /opt/oracle/ggate/dirdat/lt000001 Current LogTrail is /opt/oracle/ggate/dirdat/lt000001 Logdump 343 >ghdr on Logdump 344 >detail on Logdump 345 >detail data Logdump 346 >usertoken on Logdump 347 >pos 1105 Reading forward from RBA 88381352 Logdump 348 >n ___________________________________________________________________ Hdr-Ind : E (x45) Partition : . (x04) UndoFlag : . (x00) BeforeAfter: A (x41) RecLength : 944 (x03b0) IO Time : 2015/01/29 05:47:21.045.532 IOType : 5 (x05) OrigNode : 255 (xff) TransInd : . (x00) FormatType : R (x52) SyskeyLen : 0 (x00) Incomplete : . (x00) AuditRBA : 194407 AuditPos : 89422352 Continued : N (x00) RecCount : 1 (x01) 2015/01/29 05:47:21.045.532 Insert Len 944 RBA 88381352 -->操作类型Insert Name: GAVINPROD  -->来源数据库 After Image: Partition 4 G b 0000 000d 0000 0009 3335 3636 3730 3532 3900 0100 | ........356670529... 04ff ff00 0000 0200 04ff ff00 0000 0300 04ff ff00 | .................... 0000 0400 04ff ff00 0000 0500 04ff ff00 0000 0600 | .................... 04ff ff00 0000 0700 04ff ff00 0000 0800 0700 0000 | .................... 0337 3535 0009 0004 ffff 0000 000a 0004 ffff 0000 | .755................ 000b 0004 ffff 0000 000c 0004 ffff 0000 000d 0004 | .................... ffff 0000 000e 0004 ffff 0000 000f 0004 ffff 0000 | .................... Column 0 (x0000), Len 13 (x000d) 0000 0009 3335 3636 3730 3532 39 | ....356670529 -->数据值 Column 1 (x0001), Len 4 (x0004) ffff 0000 | .... Column 2 (x0002), Len 4 (x0004) ffff 0000 | .... Column 3 (x0003), Len 4 (x0004) ffff 0000 | .... Column 4 (x0004), Len 4 (x0004) ffff 0000 | .... Column 5 (x0005), Len 4 (x0004) ffff 0000 | .... Column 6 (x0006), Len 4 (x0004) ffff 0000 | .... Column 7 (x0007), Len 4 (x0004) ffff 0000 | .... Column 8 (x0008), Len 7 (x0007)

 

Thanks and Regards

你可能感兴趣的:(goldengate)