首批通过分布式安全可靠测评,为关键业务系统打造
ALTER RESOURCE TENANT
更新时间:2026-03-25 11:58:09
描述
当资源池已分配给租户后,如果要修改资源池配置中的 UNIT_NUM,需要使用 ALTER RESOURCE TENANT 语句。
如果要修改资源池的其他属性,需要使用 ALTER RESOURCE POOL 语句,有关 ALTER RESOURCE POOL 语句的详细介绍,请参见 ALTER RESOURCE POOL。
使用限制及注意事项
ALTER RESOURCE TENANT语句修改的是租户下所有资源池的 Unit 个数。使用
ALTER RESOURCE TENANT语句执行租户的扩缩容操作前,需要为该租户设置负载均衡策略,否则可能会导致扩缩容失败。为租户设置负载均衡策略的详细操作及说明,请参见 通过调整 Unit Number 实现租户扩缩容。
权限要求
仅 sys 租户的 root 用户(root@sys)可以修改租户的资源池配置,其他租户不支持修改租户的资源池配置。
语法
ALTER RESOURCE TENANT tenant_name UNIT_NUM [=] unit_num [ DELETE UNIT_GROUP = ( unit_group_id_list ) ];
参数说明
| 参数 | 描述 |
|---|---|
| tenant_name | 待修改资源池配置的租户名称。 |
| unit_num | 修改租户下所有资源池的 Unit 个数。增加 UNIT_NUM 时,其值需要小于或等于目标 Zone 内节点的个数。 |
| unit_group_id_list | 仅用于缩容场景。减小 unit_num 时,使用 DELETE UNIT_GROUP 可以删除指定的 Unit GROUP。如果不指定 DELETE UNIT_GROUP,系统将随机删除相应个数的 Unit Group。 |
示例
将租户
tenant1下所有资源池的 Unit 个数修改为 3。obclient(root@sys)[oceanbase]> ALTER RESOURCE TENANT tenant1 UNIT_NUM = 3;缩容场景下,删除租户
tenant2下UNIT_GROUP_ID为1006的 Unit Group。依次执行以下命令,开启负载均衡。
obclient(root@sys)[oceanbase]> ALTER SYSTEM SET enable_rebalance = true TENANT = 'tenant2';obclient(root@sys)[oceanbase]> ALTER SYSTEM SET enable_transfer = true TENANT = 'tenant2';获取租户的
TENANT_ID。obclient(root@sys)[oceanbase]> SELECT TENANT_ID,TENANT_NAME,TENANT_TYPE FROM oceanbase.DBA_OB_TENANTS WHERE TENANT_NAME = 'tenant2';查询结果如下:
+-----------+-------------+-------------+ | TENANT_ID | TENANT_NAME | TENANT_TYPE | +-----------+-------------+-------------+ | 1006 | tenant2 | USER | +-----------+-------------+-------------+ 1 row in set查看租户所拥有的 Unit,并获取待删除的
UNIT_GROUP_ID。obclient(root@sys)[oceanbase]> SELECT UNIT_ID, TENANT_ID, STATUS, RESOURCE_POOL_ID, UNIT_GROUP_ID, ZONE, SVR_IP, SVR_PORT FROM oceanbase.DBA_OB_UNITS WHERE TENANT_ID = 1006;查询结果如下:
+---------+-----------+--------+------------------+---------------+-------+----------------+----------+ | UNIT_ID | TENANT_ID | STATUS | RESOURCE_POOL_ID | UNIT_GROUP_ID | ZONE | SVR_IP | SVR_PORT | +---------+-----------+--------+------------------+---------------+-------+----------------+----------+ | 1016 | 1006 | ACTIVE | 1003 | 1006 | zone1 | xxx.xx.xxx.194 | 2882 | | 1017 | 1006 | ACTIVE | 1003 | 1007 | zone1 | xxx.xx.xxx.198 | 2882 | | 1018 | 1006 | ACTIVE | 1003 | 1006 | zone2 | xxx.xx.xxx.192 | 2882 | | 1019 | 1006 | ACTIVE | 1003 | 1007 | zone2 | xxx.xx.xxx.196 | 2882 | | 1020 | 1006 | ACTIVE | 1003 | 1006 | zone3 | xxx.xx.xxx.204 | 2882 | | 1021 | 1006 | ACTIVE | 1003 | 1007 | zone3 | xxx.xx.xxx.197 | 2882 | +---------+-----------+--------+------------------+---------------+-------+----------------+----------+ 6 rows in set根据获取的
UNIT_GROUP_ID,执行缩容操作。obclient(root@sys)[oceanbase]> ALTER RESOURCE TENANT tenant2 UNIT_NUM = 1 DELETE UNIT_GROUP = (1006);执行成功后,可以通过视图
DBA_OB_TENANT_JOBS查看调小 Unit Number 任务的执行状态。obclient(root@sys)[oceanbase]> SELECT * FROM oceanbase.DBA_OB_TENANT_JOBS WHERE JOB_TYPE='ALTER_RESOURCE_TENANT_UNIT_NUM' AND TENANT_ID=1006;查询结果如下:
+--------+--------------------------------+------------+-------------+----------+----------------------------+----------------------------+-----------+-----------------------------------------------------------------------+--------------------+----------------+-------------+ | JOB_ID | JOB_TYPE | JOB_STATUS | RESULT_CODE | PROGRESS | START_TIME | MODIFY_TIME | TENANT_ID | SQL_TEXT | EXTRA_INFO | RS_SVR_IP | RS_SVR_PORT | +--------+--------------------------------+------------+-------------+----------+----------------------------+----------------------------+-----------+-----------------------------------------------------------------------+--------------------+----------------+-------------+ | 6 | ALTER_RESOURCE_TENANT_UNIT_NUM | SUCCESS | 0 | 100 | 2023-09-25 18:01:30.069506 | 2023-09-25 18:01:45.068740 | 1006 | ALTER RESOURCE TENANT tenant2 UNIT_NUM = 2 | FROM: '1', TO: '2' | xxx.xx.xxx.196 | 2882 | | 7 | ALTER_RESOURCE_TENANT_UNIT_NUM | SUCCESS | 0 | 100 | 2023-09-26 09:37:32.367076 | 2023-09-26 09:39:05.651200 | 1006 | ALTER RESOURCE TENANT tenant2 UNIT_NUM = 1 DELETE UNIT_GROUP = (1006) | FROM: '2', TO: '1' | xxx.xx.xxx.196 | 2882 | +--------+--------------------------------+------------+-------------+----------+----------------------------+----------------------------+-----------+-----------------------------------------------------------------------+--------------------+----------------+-------------+ 2 rows in set