ITPub博客

首页 > 数据库 > 国内数据库 > 【手摸手玩转 OceanBase 95】如何从租户中移除资源池?

【手摸手玩转 OceanBase 95】如何从租户中移除资源池?

原创 国内数据库 作者:13579NB232 时间:2023-01-19 15:39:11 0 删除 编辑

您可以使用 ALTER TENANT 语句将资源池从租户中移除。

从租户中移除资源池

从租户中移除资源池的 SQL 语法如下:

ALTER TENANT tenant_name RESOURCE_POOL_LIST [=](pool_name [, pool_name...]) ;

语句使用说明:

  • 该语句仅支持由  sys 租户的管理员执行。

  • 对于  RESOURCE_POOL_LIST,一次仅支持删除一个资源池。

从租户中移除资源池的场景通常使用在租户副本数降级的场景中。

示例背景

假设集群中当前有  z1、 z2、 z3、 z4、 z5 共 5 个 Zone,且 5 个 Zone 都属于同一个 Region,每个 Zone 内一台 OBServer。集群中有一个普通租户  tenant1,当前副本分布情况  locality='F@z1,F@z2,F@z3,F@z4,F@z5', resource_pool_list=('pool1','pool2'),资源池的资源分布情况  CREATE RESOURCE POOL pool1 UNIT 'uc1', UNIT_NUM 1, ZONE_LIST ('z1', 'z2', 'z3') 和  CREATE RESOURCE POOL pool2 UNIT 'uc2', UNIT_NUM 1, ZONE_LIST ('z4', 'z5')。

根据业务需要,需要将租户  tenant1 由 5 副本调整为 3 副本,且资源池调整为 1 个,即租户的 Locality 变成  locality='F@z1,F@z2,F@z3,', resource_pool_list=('pool1')。

示例操作

  1. 使用  root 用户登录数据库的  sys 租户。

  2. 通过修改租户  tenant1 的 Locality 来删除副本。

    根据 Locality 的变更规则,每次只能删除一个 Zone 内的 Locality,Locality 的变更规则相关信息请参见  Locality 概述。

    obclient>ALTER TENANT tenant1 LOCALITY='F@z1,F@z2,F@z3,F@z4';
    obclient>ALTER TENANT tenant1 LOCALITY='F@z1,F@z2,F@z3';
  3. 删除  z4、 z5 上的资源池  pool2。

    obclient>ALTER TENANT tenant1 RESOURCE_POOL_LIST =('pool1') ;

更多信息

对于其他场景,如果您需要调整租户的可用资源,可以通过修改资源池中资源单元的配置和数量来实现。修改资源单元配置的相关操作请参见  修改资源单元的配置。修改资源池中资源单元的数量的相关操作请参见  修改资源池。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70026124/viewspace-2932801/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2023-01-18

  • 博文量
    184
  • 访问量
    93221