您可以删除不再使用的资源单元。
前提条件
删除资源单元前必须确保当前资源单元未被使用。如果资源单元正在被使用,则需要先将资源单元从资源池中移出后再删除资源单元。
在删除资源单元前,需要确认资源单元是否被使用,具体操作如下:
使用
root用户登录数据库的sys租户。执行以下语句,查看资源单元是否被指定资源池。
示例如下:
obclient> SELECT a.UNIT_CONFIG_ID, a.NAME FROM oceanbase.DBA_OB_UNIT_CONFIGS a,oceanbase.DBA_OB_RESOURCE_POOLS b WHERE b.UNIT_CONFIG_ID=a.UNIT_CONFIG_ID; +----------------+-----------------+ | UNIT_CONFIG_ID | NAME | +----------------+-----------------+ | 1 | sys_unit_config | | 1001 | unit001 | | 1001 | unit001 | +----------------+-----------------+ 3 rows in set根据查询结果,如果查询结果的 name列中无该资源单元名称,则表示该资源单元未被指定给资源池;如果查询结果的 name列中有该资源单元名称,则表示资源单元已被指定给资源池。
通过 SQL 语句删除资源单元
删除资源单元
对于资源单元未被使用的场景
如果资源单元未被指定给资源池,您可以直接执行以下语句,删除资源单元。示例语句如下:
obclient> DROP RESOURCE UNIT unit1;注意
使用
DROP RESOURCE UNIT语句删除资源单元时,仅支持删除单个资源单元,不支持批量删除多个资源单元。对于资源单元正在被使用的场景
如果资源单元已被指定给资源池,需要为原资源池指定新的资源单元后,再删除资源单元。
示例如下:
假设待删除的资源单元为 unit1,unit1被指定给了资源池 pool1,如果要移除资源单元 unit1,则需要先创建资源单元 unit1,并将 unit2 指定给 pool1后,再删除 unit1。
obclient> CREATE RESOURCE UNIT unit2 MAX_CPU=4, MIN_CPU=4, MEMORY_SIZE='5G', MAX_IOPS=1024, MIN_IOPS=1024, IOPS_WEIGHT=0, LOG_DISK_SIZE='2G'; obclient> ALTER RESOURCE POOL pool1 UNIT='unit2'; obclient> DROP RESOURCE UNIT unit1;
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




