首批通过分布式安全可靠测评,为关键业务系统打造
ALTER RESOURCE POOL
更新时间:2026-04-01 13:20:18
描述
ALTER RESOURCE POOL 语句用于修改资源池的属性,包括修改 UNIT、UNIT_NUM 和 ZONE_LIST。
使用限制及注意事项
使用
ALTER RESOURCE POOL语句修改资源池属性时,每条语句每次仅支持修改一个属性,如果需要同时修改UNIT、UNIT_NUM、ZONE_LIST中两条及以上的属性,需要分多条语句执行。增加或减少
UNIT_NUM时,如果资源池已分配给租户使用,则不能使用ALTER RESOURCE POOL语句,需要使用ALTER RESOURCE TENANT语句进行修改。有关ALTER RESOURCE TENANT语句的详细介绍,请参见 ALTER RESOURCE TENANT。
权限要求
仅 sys 租户的 root 用户(root@sys)可以修改资源池,其他租户不支持修改资源池。
语法
ALTER RESOURCE POOL
ALTER RESOURCE POOL pool_name
UNIT [=] unit_name
| UNIT_NUM [=] unit_num [DELETE UNIT = (unit_id_list)]
| ZONE_LIST [=] ('zone_name' [, 'zone_name' ...]);
参数说明
| 参数 | 描述 |
|---|---|
| unit_name | 修改资源池要使用的资源规格名称。 |
| unit_num | 指定修改单个 Zone 下 Unit 的个数。增加 unit_num 时,其值需要小于等于目标 Zone 内节点的个数。 |
| unit_id_list | 减小 unit_num 时,使用 DELETE UNIT 可以删除指定的 Unit。如果不指定 DELETE UNIT,系统将随机删除相应个数的 Unit。 <main id="notice" type=notice'>注意使用
|
| ZONE_LIST | 指定修改后资源池的 Zone 列表。 |
示例
不能同时修改资源池
pool1的多个属性,例如以下语句同时修改了UNIT、UNIT_NUM与ZONE属性,执行将报错。obclient [oceanbase]> ALTER RESOURCE POOL pool1 UNIT='unit2', UNIT_NUM=1, ZONE_LIST=('zone1'); ERROR 1235 (0A000): alter unit_num, resource_unit, zone_list in one cmd not supported特别地,在减小
UNIT_NUM时,可以删除指定的 Unit。obclient [oceanbase]> ALTER RESOURCE POOL pool1 UNIT_NUM=1 DELETE UNIT = (1002);将资源池
pool1所使用的资源规格修改为unit2。obclient [oceanbase]> ALTER RESOURCE POOL pool1 UNIT='unit2';