首批通过分布式安全可靠测评,为关键业务系统打造
DROP RESOURCE UNIT
更新时间:2026-06-02 20:07:27
描述
该语句用来删除资源单元。
注意
删除资源单元前必须确保当前资源单元未被使用。如果资源单元正在被使用,则需要先将资源单元从资源池中移除后再删除。
语法
DROP RESOURCE UNIT unit_name;
参数解释
| 参数 | 描述 |
|---|---|
| unit_name | 要删除的资源单元的名称。 |
示例
资源单元未指定给资源池时,可以直接删除资源单元
unit1。obclient> DROP RESOURCE UNIT unit1; Query OK, 0 rows affected资源单元已指定给资源池时,如果仅期望删除资源单元,无法直接删除,需要先将资源单元从资源池中移除后再删除。
例如,以下示例中,资源单元
unit1已指定给资源池pool1。obclient> CREATE RESOURCE POOL pool1 UNIT='unit1', UNIT_NUM=1, ZONE_LIST=('zone2');直接删除资源单元
unit1时,报错。obclient> DROP RESOURCE UNIT unit1; ERROR 4634 (HY000): resource unit 'UNIT1' is referenced by some resource pool此时,如果仍然需要将
unit1移出资源池pool1,可以先创建一个新的资源单元unit2,并将unit2指定给pool1后,再删除unit1,示例如下。创建新的资源单元
unit2。obclient> CREATE RESOURCE UNIT unit2 MAX_CPU 4, MEMORY_SIZE '5G', MAX_IOPS 1280,LOG_DISK_SIZE '10G', MIN_CPU=4, MIN_IOPS=1024;将
unit1移出资源池pool1。obclient> ALTER RESOURCE POOL pool1 UNIT='';注意
由于每次执行
ALTER RESOURCE POOL命令只能为资源池添加或移出一个资源单元,因此您需要先移除unit1,再添加unit2。将
unit2指定给资源池pool1。obclient> ALTER RESOURCE POOL pool1 UNIT='unit2';再次删除资源单元
unit1,删除成功。obclient> DROP RESOURCE UNIT unit1; Query OK, 0 rows affected
资源单元已指定给资源池时,如果期望同时清理资源池与资源单元,则需要先删除资源池后,再删除资源单元。
例如,以下示例中,资源单元
unit1已指定给资源池pool1。obclient> CREATE RESOURCE POOL pool1 UNIT='unit1', UNIT_NUM=1, ZONE_LIST=('zone2');直接删除资源单元
unit1时,报错。obclient> DROP RESOURCE UNIT unit1; ERROR 4634 (HY000): resource unit 'UNIT1' is referenced by some resource pool先删除资源池
pool1,再删除资源单元unit1,删除成功。obclient> DROP RESOURCE POOL pool1; Query OK, 0 rows affectedobclient> DROP RESOURCE UNIT unit1; Query OK, 0 rows affected