首批通过分布式安全可靠测评,为关键业务系统打造
clog_tool
更新时间:2023-08-07 17:31:04
OceanBase 数据库的 clog 日志类似于传统数据库的 redo 日志。clog 日志负责在事务提交时持久化事务数据。事务数据是事务对数据库的修改记录。clog_tool 用于解析并打印 clog 文件。本文将介绍如何使用 clog_tool。
目前,clog_tool 集成在 ob_admin 工具中,您可以通过执行 ob_admin 命令调用 clog_tool。
clog_tool 命令
下表列出了 clog_tool 的常用命令。
| 命令行 | 说明 |
|---|---|
dump_all |
解析并打印指定的 clog 文件。 |
dump_hex |
解析并打印指定的 clog 文件,并将不可打印的字符转换为十六进制字符打印。 |
dump_format |
解析指定的 clog 文件,并将这个日志文件按照类 SQL 形式打印。 |
dump_filter |
解析指定的 clog 文件,并打印这个日志文件中满足过滤条件的记录。 |
stat_clog |
解析指定的 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数据分区标识符 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 时,则忽略错误继续解析。