---
title: 对转储合并、迁移等后台任务进行 IO 资源隔离限制的示例-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于对转储合并、迁移等后台任务进行 IO 资源隔离限制的示例相关的常见问题和使用技巧，帮助您快速解决对转储合并、迁移等后台任务进行 IO 资源隔离限制的示例的难题。
---
切换语言

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

划线反馈

# 对转储合并、迁移等后台任务进行 IO 资源隔离限制的示例

更新时间：2026-06-10 01:56

适用版本： V4.0.x、V4.1.x、V4.2.x 内容类型：How-to  

OceanBase 数据库 V4.x 版本可以使用 `resource_manager` 对用户、SQL 以及后台线程进行资源隔离和限制。本文讲述如何对转储合并的后台线程进行资源隔离的配置。

## 适用版本

OceanBase 数据库 V4.x 版本。

## 使用 resource_manager 的原则

【严禁】在创建资源隔离组的时候（`DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE`），严禁将 group 的 min_iops/max_iops/weight_iops 配置成 0，否则可能会导致 IO 卡死的问题。

【建议】合理配置租户的 min_iops、max_iops，默认为不隔离。建议将租户的 min_iops、max_iops 修改成 `__all_virtual_io_benchmark` 中查到的 16K read 的 iops 数据，或直接设置为 10000*CPU 个数。

```shell
obclient> ALTER RESOURCE UNIT unit_name_xxx MIN_IOPS 50000, MAX_IOPS 50000;

```

## 合并配置示例

此配置将约束 compaction 类的后台任务（转储、合并等）。

```shell
/*创建plan*/
call DBMS_RESOURCE_MANAGER.CREATE_PLAN('MERGE_PLAN','plan for COMPACTION');
select PLAN from oceanbase.dba_rsrc_plans;

/*创建group*/
call DBMS_RESOURCE_MANAGER.CREATE_CONSUMER_GROUP( CONSUMER_GROUP => 'COMPACTION_LOW_GROUP', COMMENT => 'COMPACTION_LOW_GROUP');
call DBMS_RESOURCE_MANAGER.CREATE_CONSUMER_GROUP( CONSUMER_GROUP => 'COMPACTION_MID_GROUP', COMMENT => 'COMPACTION_MID_GROUP');
call DBMS_RESOURCE_MANAGER.CREATE_CONSUMER_GROUP( CONSUMER_GROUP => 'COMPACTION_HIGH_GROUP', COMMENT => 'COMPACTION_HIGH_GROUP');

/*创建directive*/
call DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE( PLAN => 'MERGE_PLAN', GROUP_OR_SUBPLAN => 'COMPACTION_LOW_GROUP' , COMMENT => 'COMPACTION_LOW_GROUP', MIN_IOPS => 5, MAX_IOPS => 50, WEIGHT_IOPS => 30);
call DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE( PLAN => 'MERGE_PLAN', GROUP_OR_SUBPLAN => 'COMPACTION_MID_GROUP' , COMMENT => 'COMPACTION_MID_GROUP', MIN_IOPS => 10, MAX_IOPS => 80, WEIGHT_IOPS => 40);
call DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE( PLAN => 'MERGE_PLAN', GROUP_OR_SUBPLAN => 'COMPACTION_HIGH_GROUP' , COMMENT => 'COMPACTION_HIGH_GROUP', MIN_IOPS => 20, MAX_IOPS => 100, WEIGHT_IOPS => 60);

/*创建映射关系*/
call DBMS_RESOURCE_MANAGER.SET_CONSUMER_GROUP_MAPPING('FUNCTION', 'COMPACTION_LOW', 'COMPACTION_LOW_GROUP');
call DBMS_RESOURCE_MANAGER.SET_CONSUMER_GROUP_MAPPING('FUNCTION', 'COMPACTION_MID', 'COMPACTION_MID_GROUP');
call DBMS_RESOURCE_MANAGER.SET_CONSUMER_GROUP_MAPPING('FUNCTION', 'COMPACTION_HIGH', 'COMPACTION_HIGH_GROUP');

/*plan生效*/
set global resource_manager_plan = 'MERGE_PLAN';

/*关闭隔离，如果有必要的话*/
set global resource_manager_plan = '';

```

## 迁移配置示例

此配置将约束 migrate 类的后台任务。

```shell
/*创建plan*/
call DBMS_RESOURCE_MANAGER.CREATE_PLAN('MIGRATE_PLAN','plan for HA');
select PLAN from oceanbase.dba_rsrc_plans;

/*创建group*/
call DBMS_RESOURCE_MANAGER.CREATE_CONSUMER_GROUP( CONSUMER_GROUP => 'HA_LOW_GROUP', COMMENT => 'HA_LOW_GROUP');
call DBMS_RESOURCE_MANAGER.CREATE_CONSUMER_GROUP( CONSUMER_GROUP => 'HA_MID_GROUP', COMMENT => 'HA_MID_GROUP');
call DBMS_RESOURCE_MANAGER.CREATE_CONSUMER_GROUP( CONSUMER_GROUP => 'HA_HIGH_GROUP', COMMENT => 'HA_HIGH_GROUP');

/*创建directive*/
call DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE( PLAN => 'MIGRATE_PLAN', GROUP_OR_SUBPLAN => 'HA_LOW_GROUP' , COMMENT => 'HA_LOW_GROUP', MIN_IOPS => 5, MAX_IOPS => 60, WEIGHT_IOPS => 40);
call DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE( PLAN => 'MIGRATE_PLAN', GROUP_OR_SUBPLAN => 'HA_MID_GROUP' , COMMENT => 'HA_MID_GROUP', MIN_IOPS => 5, MAX_IOPS => 60, WEIGHT_IOPS => 40);
call DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE( PLAN => 'MIGRATE_PLAN', GROUP_OR_SUBPLAN => 'HA_HIGH_GROUP' , COMMENT => 'HA_HIGH_GROUP', MIN_IOPS => 5, MAX_IOPS => 60, WEIGHT_IOPS => 40);

/*创建映射关系*/
call DBMS_RESOURCE_MANAGER.SET_CONSUMER_GROUP_MAPPING('FUNCTION', 'HA_LOW', 'HA_LOW_GROUP');
call DBMS_RESOURCE_MANAGER.SET_CONSUMER_GROUP_MAPPING('FUNCTION', 'HA_MID', 'HA_MID_GROUP');
call DBMS_RESOURCE_MANAGER.SET_CONSUMER_GROUP_MAPPING('FUNCTION', 'HA_HIGH', 'HA_HIGH_GROUP');

/*plan生效*/
set global resource_manager_plan = 'MIGRATE_PLAN';

```

## 查看资源隔离设置

```shell
/*查看当前生效的plan*/
select NAME from oceanbase.v$rsrc_plan;

/*查看资源隔离的 IO 配置情况*/
select * from oceanbase.DBA_OB_RSRC_IO_DIRECTIVES;

/*查看实时iops*/
select * from __all_virtual_io_quota;
select * from __all_virtual_io_benchmark;

```

上一篇

[关于 observer 租户 UNIT 内 tablet 数量上限](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000005639982)

下一篇

[低版本租户请求泄漏问题](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000763800) ![有帮助](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) 咨询热线
