---
title: 迁移复制期间源端 IO 未打标导致 SQL RT 飙高-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于迁移复制期间源端 IO 未打标导致 SQL RT 飙高相关的常见问题和使用技巧，帮助您快速解决迁移复制期间源端 IO 未打标导致 SQL RT 飙高的难题。
---
切换语言

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

划线反馈

# 迁移复制期间源端 IO 未打标导致 SQL RT 飙高

更新时间：2026-06-01 09:21

适用版本： V4.2.x、V4.3.x 内容类型：Troubleshoot  

## 问题现象

在执行租户级的迁移复制操作期间，业务端 SQL 请求的 RT（响应时间）突然飙高，系统延迟明显升高，严重影响在线业务的正常运行。

现场观察到的情况如下：

- SQL RT 异常升高时段与租户迁移复制的时间段高度重合。
 - 查看性能监控，发现源端节点的IO资源利用率急剧上升，SQL 吞吐降低。
 - 对比其他非迁移时段，业务 RT 明显回落。

## 关键诊断信息

### 触发条件

- 集群启用 IO 隔离（Resource Manager Plan）。
 - 执行租户级别的迁移复制。
 - 源端未对迁移拉取宏块的 RPC 请求进行正确的 IO 打标，导致这类 IO 被错误归类到 `other group`。

### 事前巡检

- 检查集群总体负载、CPU、内存、磁盘 IO、网络等关键资源指标，未发现异常。
 - 确认系统无大规模 DDL、Compaction 等资源消耗任务。

### 事后诊断

快速判断是否命中该问题的关键方法：

1. 对比 SQL RT 异常时段与迁移任务时间是否吻合。
 2. 登录源端，观察 IO 隔离 group 的资源使用情况，确认 `other group IO 量激增`。
 3. 查看日志，确认存在大量迁移RPC拉取宏块请求，最简单可以看选源端的事件。

   ```shell
   ocp_common_ro@[oceanbase]>select * from __all_server_event_history where module like '%storage_ha%' and event like '%choose_src%' and gmt_create >= timestamp'2025-06-20 10:48:08.196225' and gmt_create <= timestamp'2025-06-20 10:51:30.539778';
   +----------------------------+--------------+----------+------------+------------+-----------+--------+-------+--------+----------+--------------------+----------+---------------------+---------+---------------+-------+--------+------------+
   | gmt_create                 | svr_ip       | svr_port | module     | event      | name1     | value1 | name2 | value2 | name3    | value3             | name4    | value4              | name5   | value5        | name6 | value6 | extra_info |
   +----------------------------+--------------+----------+------------+------------+-----------+--------+-------+--------+----------+--------------------+----------+---------------------+---------+---------------+-------+--------+------------+
   | 2025-06-20 10:48:18.967604 | xx.xxx.x.221 |     2882 | storage_ha | choose_src | tenant_id | 1002   | ls_id | 1003   | src_addr | "xx.xxx.x.74:2882" | dst_addr | "xx.xxx.x.211:2882" | op_type | MIGRATE_LS_OP |       |        |            |
   | 2025-06-20 10:48:19.602469 | xx.xxx.x.211 |     2882 | storage_ha | choose_src | tenant_id | 1002   | ls_id | 1006   | src_addr | "xx.xxx.x.77:2882" | dst_addr | "xx.xxx.x.211:2882" | op_type | MIGRATE_LS_OP |       |        |            |
   | 2025-06-20 10:48:19.666592 | xx.xxx.x.211 |     2882 | storage_ha | choose_src | tenant_id | 1002   | ls_id | 1005   | src_addr | "xx.xxx.x.74:2882" | dst_addr | "xx.xxx.x.211:2882" | op_type | MIGRATE_LS_OP |       |        |            |
   | 2025-06-20 10:48:19.959355 | xx.xxx.x.211 |     2882 | storage_ha | choose_src | tenant_id | 1002   | ls_id | 1002   | src_addr | "xx.xxx.x.77:2882" | dst_addr | "xx.xxx.x.211:2882" | op_type | MIGRATE_LS_OP |       |        |            |
   +----------------------------+--------------+----------+------------+------------+-----------+--------+-------+--------+----------+--------------------+----------+---------------------+---------+---------------+-------+--------+------------+
   4 rows in set (0.129 sec)

   ```

## 问题原因

迁移复制任务在源端执行宏块拉取时，RPC 请求发起方没有进行 `consumer group 打标`，导致这些 IO 被默认归类到 `other group`。 由于 `other group` 本质为业务 SQL 前台请求保留组，无法进行有效的 IO 限流和隔离，造成后台迁移 IO 和业务 SQL 抢占同一 IO 配额，最终拖高 SQL RT。

## 问题的风险及影响

- 对业务 SQL 请求的实时性能造成直接影响，RT 升高，SQL 延迟变差。
 - 大并发环境下可能引发 SQL 超时或失败。

## 影响租户

影响 OceanBase 数据库中的 SYS 租户和 Oracle 租户以及 MySQL 租户。

## 影响版本

OceanBase 数据库企业版 V4.2.1 GA（oceanbase-4.2.1.0-100000182023092722）及之后版本、V4.2.2 GA（oceanbase-4.2.2.0-100000082024011317）及之后版本、V4.2.5 GA（oceanbase-4.2.5.0-100000082024102022）及之后版本、V4.3.0（oceanbase-4.3.0.0-100000072024020200）及之后版本、V4.3.5 GA（oceanbase-4.3.5.0-100000122024123020）及之后版本。

## 解决方法

- 升级到问题已修复版本。目前已修复的版本包含 OceanBase 数据库企业版 V4.2.5 BP4（oceanbase-4.2.5.4-104000082025052817）及之后版本、V4.3.5 BP3（oceanbase-4.3.5.3-103000102025071821）及之后版本。
 - 若问题已发生且正在影响业务，可临时采取以下应急措施：

     1. 暂停当前迁移任务，待业务低峰时段重新安排。
     2. 临时调大 `other group` 的 IO 限额（可以通过降低其他 `group` 的 IO 配额实现），缓解 SQL IO 抢占。
     3. 如有可能，可通过调小迁移并发数（租户级别 [ha_high_thread_score](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000003381562) 与 [ha_mid_thread_score](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000003381501)），降低源端 IO 压力。

## 规避方式

**短期规避：**

- 在迁移窗口选择业务低峰时段执行。
 - 提前调大 `other group` 限额，避免迁移期间 SQL 被过度抢占。

**长期规避（推荐）：**

升级至包含迁移 RPC 源端 IO 打标修复的版本，确保后续迁移流量正确归类到 `background group` 或 `HA group` 等非 SQL 前台组。

上一篇

[迁移失败，报错 4551，无数据迁移至新节点](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000004510197)

下一篇

[OceanBase 数据库 V2.x 版本用于诊断任务与事件状态的虚拟表与视图](https://www.oceanbase.com/knowledge-base/oceanbase-database-20000010163) ![有帮助](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) 咨询热线
