ogg的logdump的基本使用
1. 作用
logdump是ogg附带的一个标准工具。Logdump允许用户查看和扫描事务和记录,获取事务统计信息,并保存OGG跟踪中包含的数据
2. Trail文件内容
- File Header: 包含有关生成跟踪文件和跟踪文件内容的物理环境的大量信息
- Trail Info: 签名,兼容性,字符集,创建时间,URI, URI历史,文件名,Trail序号,文件大小,开始CSN,结束CSN,开始IOtime,结束IOtime,log BSN
- Machine Info: 操作系统名称、节点名称、版本号、版本号、硬件
- Database Info: 厂商、名称、字符集、主版本号、次版本号、版本字符串、客户端字符集、 Db Object元数据,Db时区
- Producer Info: 数据源,主要版本,次要版本,维护级别,Bug修复级别,构建号,版本字符串
- Continuity Info: 最后的CSN, 最后的事务号
- transaction record: 包含数据信息
- GHDR: GoldenGate Header,这包括源提交时间戳(IOtime)、记录长度、数据库操作类型(IOtype)、该记录是在image之前还是之后,以及源表名。GHDR还包含将每个记录表示为交易的开始记录、交易的结束记录。
- Data Area: 源数据库操作的原子数据。这包括after image更改后的列索引号和数据,或为before image更改前的原始列数据
- GGS Tokens: 包括源数据库row id、源数据库csn号(LOGCSN)和源数据库transaction id (TRANID)
- User Tokens: 用户定义的数据,并通过Extract添加 @TOKEN 函数添加信息到Trail中
3. 使用logdump
3.1. 进入log dump :
$ cd $gg_home $ ./logdump Oracle GoldenGate Log File Dump Utility for Oracle Version 12.2.0.2.2 OGGCORE_12.2.0.2.0_PLATFORMS_170630.0419 Copyright (C) 1995, 2017, Oracle and/or its affiliates. All rights reserved. Logdump >
3.2. 打开一个trail文件,进行数据的查找或者操作
Logdump >open ./dirdat/rd000001716
3.3. 常用命令
3.3.1. 查看File Header详细信息,可获取包括上面列表中的Trail Info,Machine Info,Producer Info,Continuity Info
Logdump >fileheader detail Logdump >pos 0 Logdump >n
3.3.2. 打印数据头部的信息
Logdump >ghdr on
Logdump >sfh
Logdump >n
___________________________________________________________________
Hdr-Ind : E (x45) Partition : . (x0c)
UndoFlag : . (x00) BeforeAfter: A (x41)
RecLength : 349 (x015d) IO Time : 2021/02/21 03:00:42.000.000
IOType : 5 (x05) OrigNode : 255 (xff)
TransInd : . (x01) FormatType : R (x52)
SyskeyLen : 0 (x00) Incomplete : . (x00)
AuditRBA : 1734 AuditPos : 111610252
Continued : N (x00) RecCount : 1 (x01)
2021/02/21 03:00:42.000.000 Insert Len 349 RBA 3659
Name: TEST.TBL_CUP_TEST (TDR Index: 1)
After Image: Partition 12 G m
0000 001c 0000 0018 6679 6764 4732 3231 3032 3230 | ........fygdG2210220
4330 3032 3338 3333 3438 3231 0001 000c 0000 0008 | C00238334821........
3230 3231 3032 3231 0002 000c 0000 0008 3230 3231 | 20210221........2021
3032 3230 0003 000a 0000 0006 3138 3332 3431 0004 | 0220........183241..
0010 0000 000c 4330 3032 3338 3333 3438 3231 0005 | ......C00238334821..
001c 0000 0018 6679 6764 4732 3231 3032 3230 4330 | ......fygdG2210220C0
3032 3338 3333 3438 3231 0006 0005 0000 0001 3200 | 0238334821........2.
| TES
3.3.3. 打印数据的详细信息
Logdump >detail data on
Logdump >ggstoken detail on
Logdump >sfh
___________________________________________________________________
Hdr-Ind : E (x45) Partition : . (x0c)
UndoFlag : . (x00) BeforeAfter: A (x41)
RecLength : 349 (x015d) IO Time : 2021/02/21 03:00:42.000.000
IOType : 5 (x05) OrigNode : 255 (xff)
TransInd : . (x01) FormatType : R (x52)
SyskeyLen : 0 (x00) Incomplete : . (x00)
AuditRBA : 1734 AuditPos : 111610252
Continued : N (x00) RecCount : 1 (x01)
2021/02/21 03:00:42.000.000 Insert Len 349 RBA 4521
Name: TEST.TBL_CUP_TEST (TDR Index: 1)
After Image: Partition 12 G m
0000 001c 0000 0018 6679 6764 3932 3231 3032 3230 | ........fygd92210220
3330 3030 3231 3839 3632 3336 0001 000c 0000 0008 | 300021896236........
3230 3231 3032 3231 0002 000c 0000 0008 3230 3231 | 20210221........2021
3032 3230 0003 000a 0000 0006 3138 3337 3538 0004 | 0220........183758..
0010 0000 000c 3330 3030 3231 3839 3632 3336 0005 | ......300021896236..
001c 0000 0018 6679 6764 3932 3231 3032 3230 3330 | ......fygd9221022030
3030 3231 3839 3632 3336 0006 0005 0000 0001 3200 | 0021896236........2.
Column 0 (x0000), Len 28 (x001c)
0000 0018 6679 6764 3932 3231 3032 3230 3330 3030 | ....fygd922102203000
3231 3839 3632 3336 | 21896236
Column 1 (x0001), Len 12 (x000c)
0000 0008 3230 3231 3032 3231 | ....20210221
Column 2 (x0002), Len 12 (x000c)
0000 0008 3230 3231 3032 3230 | ....20210220
Column 3 (x0003), Len 10 (x000a)
0000 0006 3138 3337 3538 | ....183758
Column 4 (x0004), Len 16 (x0010)
0000 000c 3330 3030 3231 3839 3632 3336 | ....300021896236
Column 5 (x0005), Len 28 (x001c)
0000 0018 6679 6764 3932 3231 3032 3230 3330 3030 | ....fygd922102203000
3231 3839 3632 3336 | 21896236
Column 6 (x0006), Len 5 (x0005)
0000 0001 32 | ....2
GGS tokens:
TokenID x52 'R' ORAROWID Info x00 Length 20
4141 4171 4477 4141 6a41 414a 3143 7041 414e 0001 | AAAqDwAAjAAJ1CpAAN..
可以看出
- 表名: TEST.TBL_CUP_TEST
- 类型: Insert
- io time:2021/02/21 03:00:42
- 数据column0: fygd92210220300021896236
- RBA: 4521
3.3.4. 开始找数据
比如我要找TBL_TEST_OGGX的操作数据
- pos eof是从文件结尾开始查找数据,pos rev是从后往前查找,此时n命令会查到该表的最后一次操作信息
Logdump >detail data on
Logdump >ggstoken detail on
Logdump >filter include filename TEST.TBL_TEST_OGGX
Logdump >pos eof
Logdump >pos rev
Logdump >n
2021/02/23 09:48:03.000.381 Insert Len 13 RBA 85174196
Name: TEST.TBL_TEST_OGGX (TDR Index: 13)
After Image: Partition 12 G e
0000 0009 0000 0005 3939 3939 39 | ........99999
Column 0 (x0000), Len 9 (x0009)
0000 0005 3939 3939 39 | ....99999
GGS tokens:
TokenID x52 'R' ORAROWID Info x00 Length 20
4141 4135 6365 4141 6741 414a 772b 4541 4653 0001 | AAA5ceAAgAAJw+EAFS..
Filtering suppressed 3623 records
-- 最后一个操作是Insert TEST.TBL_TEST_OGGX,记录是99999
- pos 0是从开头开始查找数据,pos for是从前往后查找,此时n查找的是最开始的一个操作,
Logdump >pos 0
Logdump >pos for
Logdump >n
2021/02/23 09:48:03.004.374 Insert Len 9 RBA 75885450
Name: TEST.TBL_TEST_OGGX (TDR Index: 13)
After Image: Partition 12 G b
0000 0005 0000 0001 31 | ........1
Column 0 (x0000), Len 5 (x0005)
0000 0001 31 | ....1
GGS tokens:
TokenID x52 'R' ORAROWID Info x00 Length 20
4141 4135 6365 4141 6741 4143 3232 6541 4141 0001 | AAA5ceAAgAAC22eAAA..
TokenID x4c 'L' LOGCSN Info x00 Length 13
3630 3439 3531 3532 3636 3734 32 | 6049515266742
TokenID x36 '6' TRANID Info x00 Length 11
3130 2e32 2e31 3831 3836 31 | 10.2.181861
TokenID x69 'i' ORATHREADID Info x01 Length 2
0001
-- 最开始操作是Insert TEST.TBL_TEST_OGGX,记录是1
- count是统计信息
Logdump >count
Total Data Bytes 1289003
Avg Bytes/Record 12
Insert 99999
Metadata Records 1
After Images 99999
Filtering matched 100000 records
suppressed 189254 records
Average of 2 Transactions
Bytes/Trans ..... 3044501
Records/Trans ... 50000
Files/Trans ..... 80
TEST.TBL_TEST_OGGX Partition 0
Total Data Bytes 122
Avg Bytes/Record 122
Metadata Records 1
TEST.TBL_TEST_OGGX Partition 12
Total Data Bytes 1288881
Avg Bytes/Record 12
Insert 99999
After Images 99999
3.3.5. 过滤出需要的数据后,可以保存,待后续处理
Logdump 632 >save ./dirout/TBL_TEST_OGGX.test 100000 records
Warning: Invalid sequence length or sequence number in target trail filename /gg/product/dirout/TBL_TEST_OGGX.test. Sequence number in target trail file header will be set to zero.
Logdump 633 >pos 0
Reading forward from RBA 0
Logdump 634 >save ./dirout/TBL_TEST_OGGX.test 100000 records
Saved 99999 records to /gg/product/dirout/TBL_TEST_OGGX.test
$ ll dirout/ib*
-rw-r--r-- 1 oracle oinstall 18580093 Feb 23 18:07 dirout/TBL_TEST_OGGX.test
最后修改时间:2022-02-18 17:32:06
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




