logdump命令使用
Logdump是GoldenGate复制软件中附带的一个工具软件,在OGG的目录下可以找到。这个工具主要用于分析OGG生成的队列文件,查找记录、统计队列文件中的数据等。
在OGG安装目录下执行logdump.exe or ./logdump即可进入命令行。
1、格式设置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | 开始查找记录之前,先要做一些设置 1.显示记录头 Logdump 1> GHDR ON 记录头中包含有记录对应的一些辅助信息,如操作类型、操作时间等 2.显示字段信息 Logdump 2> DETAIL ON 此开关打开之后,会显示数据对应的字段序号和ASCII值 3.增加HEX和ASCII数据到记录显示界面 Logdump 3> DETAIL DATA 4.查看用户定义的tokens Logdump 4> USERTOKEN ON tokens即用户在抽取或传输时添加的定制信息,比如环境信息或自定义字段值 5.查看OGG生成的tokens Logdump 4> GGSTOKEN ON OGG生成的tokens包括有事务ID(XID), DML操作的rowid,其它一些辅助信息。 6.控制待显示的记录长度 Logdump 5> RECLEN length 7. 打开一个队列文件 Logdump 6> OPEN file_name 其中,file_name 可以是相对路径或绝对路径,比如 open /home/ggs/dirdat/jd000000 open $data01.glogggl.aa000000 8.跳转到下一条记录 Logdump 7> NEXT 也可以只输入:N |
2、常用命令
1 2 3 4 5 6 7 8 9 | Logdump 10> HELP #获取在线帮助 Logdump 46 >open ./dirdat/5b000000 #打开文件 Logdump 51 >pos 153345 #跳转到指定RBA Logdump 61 >n #查看下一条记录 后面加数字表示跳转多少条记录 如 n 100 跳转到100条记录后 Logdump 62 >scanforendtrans #为了不破坏事务的完整性,找到这个SQL的事务结尾,找到下个事务的起始RBA End of Transaction found at RBA 165149 Logdump 65 >scanforheader #通过Scanforheader知道下一个事务的开始 Logdump 67> COUNT #统计队列文件中的记录数 Logdump 74> ENV #这个命令会显示当前的过滤条件是怎样的,文件名,位置等环境信息。 |
3、命令详解
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | 1. 查看下一条正常的记录 Logdump 8> SCANFORHEADER 也可以直接输入简写:SFH 2. 查看事务的开始、中间点和结束点 Logdump 9> GHDR ON Logdump 10> DETAIL ON Logdump 11> N 查看记录头中的 TransInd 属性,说明如下: Transaction Indicator Description TransInd : . (x00) 事务开始的第一条记录 TransInd : . (x01) 事务中间记录 TransInd : . (x02) 事务中最后一条记录 TransInd : . (x03) 独立事务 使用命令 N 跳到下一条记录,查看 TransInd 是否有变化。 3. 查看事务的结束位置 Logdump 20> SCANFORENDTRANS 也可以直接输入简写:SFET. 这个命令会显示下一个事务的第一记录,此时,TransInd的标志应该是0x00 4. 跳到指定的RBA位置 主要用于交付进程宕机之后,定位错误的记录 Logdump 35> POS rba Logdump 36> N 显示RBA对应的记录信息 跳转到文件的第一条记录 Logdump 37> POS FIRST 也可以如下操作 Logdump 37> POS 0 5. 基于表或文件名过滤 如只查看某个表的数据 Logdump 60> FILTER INCLUDE FILENAME [container | catalog] schema.table 现在,使用 N 命令,只有符合条件的表的记录才会显示。也可以使用Exclude参数不看某个表的记录。 6. 清除当前过滤条件 Logdump 62> FILTER CLEAR 7. 使用多个条件进行过滤 Logdump 60> FILTER INCLUDE FILENAME $volume.subvolume...file..; FILTER RECTYPE record_type; FILTER MATCH ALL Logdump 60> FILTER INCLUDE ANSINAME catalog.schema.table; FILTER RECTYPE record_type; FILTER MATCH ALL Logdump 65> FILTER INCLUDE FILENAME schema.table; FILTER RECTYPE record_type; FILTER MATCH ALL 使用MATCH ANY 或 MATCH ALL 可设置多个条件的关联关系。 8. 统计队列文件中的记录数 Logdump 67> COUNT 9. 保存记录到新文件 保存整个文件,使用如下命令 Logdump 68> SAVE file 保存部分记录,使用如下命令 Logdump 69> SAVE file n RECORDS 10. 打开下一个对应序列的队列文件 Logdump 70> NEXTTRAIL 此命令会关闭当前队列文件,并打开对应序号的文件 11. 记录logdump的操作过程 开始记录 Logdump 71> LOG TO filename.txt 写入操作过程到文件 Logdump 72> WRITELOG "text" 停止记录 Logdump 73> LOG STOP 12. 查看当前环境设置 Logdump 74> ENV 这个命令会显示当前的过滤条件是怎样的,文件名,位置等环境信息。 13. 获取在线帮助 Logdump 75> HELP 14. 退出logdump Logdump 100> EXIT 或 Logdump 100> QUIT |
做一个决定,并不难,难的是付诸行动,并且坚持到底。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)