---
title: 使用 ob_admin 分析 clog 日志定位数据丢失问题-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于使用 ob_admin 分析 clog 日志定位数据丢失问题相关的常见问题和使用技巧，帮助您快速解决使用 ob_admin 分析 clog 日志定位数据丢失问题的难题。
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

划线反馈

# 使用 ob_admin 分析 clog 日志定位数据丢失问题

更新时间：2026-06-12 04:01

适用版本： V2.1.x、V2.2.x、V3.1.x、V3.2.x 内容类型：TechNote  

## 适用版本

OceanBase 所有版本。

## 简介

ob_admin 是 OceanBase 提供的一个运维工具，主要提供了 `dump sstable`、`dump clog`、`iobench` 等功能，可以用于排查数据不一致、丢数据、数据错等正确性问题。本文展示使用 ob_admin 查看 clog 日志来定丢数据的问题。

## ob_admin clog_tool 使用指南

下表列出了 log_tool 的常用命令。

| 命令行 | 说明 |
| --- | --- |
| `ob_admin clog_tool dump_ilog [ilog_files]` | 将 ilog 文件中的内容全部打印出来 |
| `ob_admin clog_tool dump_all [log_files]` | 将 clog 文件中的内容全部打印出来 |
| `ob_admin clog_tool dump_hex [log_files]` | 将 clog 文件中的内容以 16 进制的格式打印出来 |
| `ob_admin clog_tool dump_format [log_files]` | 将 clog 文件中的内容以格式化的形式打出来 |
| `ob_admin clog_tool dump_filter [filter_str] [log_files]` | 将 ilog 文件中的按提供的 filter 信息过滤并打印出来 |

### dump_ilog

用于打印 ilog 文件内容。

示例：

```shell
./ob_admin clog_tool dump_ilog 1

```

#### 说明

`dump_ilog` 后面的数字为 ilog 文件的编号。

### dump_all

将 clog 文件中的内容全部打印出来。

示例：

```shell
./ob_admin clog_tool dump_all 19999

```

![1](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/knowledge-base/database/synchronization-and-election/clog/analyzing-the-issue-of-data-loss-in-clog-log-localization-using-ob-admin/1.png)

#### 说明

其中 `$$$` 非 clog 本身内容，是 clog_tool 加在每条日志行首，便于查找每条日志首部。

### dump_format

dump_format 会将日志解析一遍，分析出该日志的操作。

示例：

```shell
./ob_admin clog_tool dump_format 19999

```

返回结果如下：

![2](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/knowledge-base/database/synchronization-and-election/clog/analyzing-the-issue-of-data-loss-in-clog-log-localization-using-ob-admin/2.png)

如上图所示，dump_format 打印出来的结果比较规整，红色框部分是 trans_id, 黄色框表示 DML 类型，绿色框表示 table_id, 灰色框是主键，白色框是修改的具体内容，以 `column_id:` 数据内容的方式展现。

### dump_hex

日志中很可能会有不可打印日志，dump_hex 和 dump_all 不同的地方在于将不可打印字符以 16 进制的方式展示出来。

其使用方法和 `dump_all` 一样。

### dump ofs 上的 clog 文件

从 OceanBase 数据库 V3.0 版本之后，支持 dump ofs 上的 clog 文件，dump ofs 上的 clog 文件有两种方式：

- 指定完整的 ofs 目录路径：ofs_addr

  ```shell
  ./ob_admin clog_tool dump_filter 'table_id=1101710651083705' ofs_addr://xx.xx.xx.xx:/server_data/clog/{1..2}

  ```
 - 先将 clog 文件 dump 下来，之后将文件当做本地文件一样处理：

  ```shell
  ./ob_admin clog_tool dump_filter 'table_id=1101710651083705  {1..2}  

  ```

## 案例：Update 的数据不见了？

应用反馈，update 了一条数据，但是实际库里没有更新。由于 sql audit 中的信息已经刷新，采用 ob_admin 直接分析 clog 日志来查看该表上的更新操作。

1. 首先根据应用 update 的时间，确定 clog 文件号（1234）。
 2. 使用 ob_admin 对该 clog 文件进行解析，以 table_id 为过滤条件：

   ```shell
   /home/admin/oceanbase/bin/ob_admin clog_tool dump_filter 'table_id=1100611139457011' 1234 > /tmp/tmp2.log

   ```
 3. 使用主键值来搜索解析后的 clog 文件：

   ```shell
   grep 755999 /tmp/tmp2.log

   ```

   返回结果如下：

   ![3](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/knowledge-base/database/synchronization-and-election/clog/analyzing-the-issue-of-data-loss-in-clog-log-localization-using-ob-admin/3.png)

通过解析 clog 方式进行确认当时的执行逻辑，在业务第一次 update 之后又做了一次 update，之前更新到了 17:02，后面又做了一次更新到了 17:01。经业务排查，确认是应用逻辑存在问题。

上一篇

[Checkpoint Mgr 相关常见问题排查](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000891343)

下一篇

[Clog 滑动窗口超时的原因及判断](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000004726131) ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
