基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
clog_tool
更新时间:2023-08-03 17:20:32
OceanBase 数据库的 clog 日志类似于传统数据库的 redo 日志。clog 日志负责在事务提交时持久化事务数据。事务数据是事务对数据库的修改记录。clog_tool 用于解析并打印 clog 文件。本文将介绍如何使用 clog_tool。
clog_tool 命令
目前,clog_tool 集成在 ob_admin 工具中,您可以通过执行 ob_admin 命令调用 clog_tool。 下表列出了 clog_tool 的常用命令。
| 命令行 | 说明 |
|---|---|
dump_all |
解析并打印指定的 clog 文件。 |
dump_hex |
解析并打印指定的 clog 文件,并将不可打印的字符转换为十六进制字符打印。 |
dump_format |
解析指定的 clog 文件,并将这个日志文件按照类 SQL 形式打印。 |
dump_filter |
解析指定的 clog 文件,并打印这个日志文件中满足过滤条件的记录。 |
stat_clog |
解析指定的 clog 文件,并打印这个日志文件的统计信息。 |
dump_meta |
解析指定的 clog 文件,并仅打印日志记录中的事务信息,不打印用户数据。 |
dump_all 命令
ob_admin clog_tool dump_all <clog_file_name>
代码使用说明:
使用
dump_all命令解析并打印指定的 clog 文件。解析多个文件时,文件名需要使用空格隔开。其中
clog_file_name为指定 clog 文件名。clog_file_name可以包含文件路径。例如:解析并打印单个 clog 文件。此处待解析的 clog 文件名为
101,且这个文件位于当前目录,则运行以下命令解析并打印该文件。ob_admin clog_tool dump_all 101解析并打印多个 clog 文件。此处待解析的 clog 文件名为
101和103,且这两个文件均位于当前目录,则运行以下命令解析并打印这两个文件。ob_admin clog_tool dump_all 101 103解析并打印多个连续的 clog 文件。此处待解析的 clog 文件名为
101、102、103和104,且这些文件均位于当前目录,则运行以下命令解析并打印这些文件。ob_admin clog_tool dump_all {101..104}
dump_hex 命令
ob_admin clog_tool dump_hex <clog_file_name>
代码使用说明:
如果 clog 日志中包含不可打印的字符,那么 ob_admin 将无法通过
dump_all命令打印这部分内容。使用dump_hex命令将不可打印的字符转为十六进制字符并打印。<clog_file_name>使用详情,请参见 dump_all 命令。
dump_format 命令
ob_admin clog_tool dump_format <clog_file_name>
代码使用说明:
通过
dump_all命令打印的日志不便于阅读。为了增强可读性,使用dump_format命令解析指定的 clog 文件,并将这个日志文件按照类 SQL 形式打印。<clog_file_name>使用详情,请参见 dump_all 命令。
dump_filter 命令
ob_admin clog_tool dump_filter '<filter_name>' <clog_file_name>
代码使用说明:
使用
dump_filter命令可以打印满足特定条件的 clog 日志记录,从而减少 clog 日志记录的打印量,便于问题排查。<clog_file_name>使用详情,请参见 dump_all 命令。目前,
filter_name的取值如下: | 过滤条件名称 | 说明 | |----------------|---------| |table_id| 数据表标识符 | |partition_id| 数据分区标识符 | |log_id| 日志记录标识符 |filter_name可以单独使用,也可以组合使用。过滤多个条件时,条件名称需要用英文分号(;)隔开。例如:table_id为 123,clog 文件名为101且位于当前目录,则运行以下命令解析并打印该文件。ob_admin clog_tool dump_filter 'table_id=123' 101table_id为123,partition_id为2,需要解析的 clog 文件名为101且位于当前目录,则运行以下命令解析并打印该文件。ob_admin clog_tool dump_filter 'table_id=123;partition_id=2' 101
stat_clog 命令
ob_admin clog_tool stat_clog <clog_file_name>
代码使用说明:
使用
stat_clog命令获取指定 clog 文件的统计信息,包括日志文件大小、日志记录个数、事务个数等信息。说明
clog_tool 可以通过环境变量
CLOG_TOOL_BREAK_ON_FAIL控制解析过程中是直接退出还是忽略错误继续。当CLOG_TOOL_BREAK_ON_FAIL的值为 true 时,直接退出;当CLOG_TOOL_BREAK_ON_FAIL的值为 false 时,则忽略错误继续解析。<clog_file_name>使用详情,请参见 dump_all 命令。
dump_meta 命令
ob_admin clog_tool dump_meta <clog_file_name>
代码使用说明:
- 使用
dump_meta命令获取指定 clog 文件,并仅打印日志记录中的事务信息,不打印用户数据。在某些情况下,更有利于保证用户数据安全。 <clog_file_name>使用详情,请参见 dump_all 命令。