暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

分布式数据库学习Note246:OceanBase社区版中,如何修改资源池属性?

欢迎访问 OceanBase 官网获取更多信息:https://www.oceanbase.com/


修改资源池属性,即是调整资源池配置的 UNITUNIT_NUMZONE_LIST 等参数信息。本文介绍如何修改资源池属性。

资源池属性可以通过 ALTER RESOURCE POOL 语句进行修改。

修改租户资源池属性是实现租户扩容或缩容的另一种方式。例如,调大 UNIT_NUM 可以增加每个 Zone 中节点数量达到扩容的目的。

说明

当前版本暂不支持对租户资源池进行调小操作。

操作步骤

  1. 使用 root 用户登录到集群的 sys 租户。

    obclient -h172.30.xx.xx -P2883 -uroot@sys#cluster -p**** -A
    
  2. 进入 oceanbase 数据库。

    obclient [(none)]> USE oceanbase;
    
  3. 通过 DBA_OB_RESOURCE_POOLS 视图,获取资源池的配置信息。

    以查询资源池 mq_pool_02 的配置信息为例:

    obclient [oceanbase]> SELECT * FROM DBA_OB_RESOURCE_POOLS WHERE NAME = 'mq_pool_02';
    +------------------+------------+-----------+----------------------------+----------------------------+------------+----------------+-------------+--------------+
    | RESOURCE_POOL_ID | NAME       | TENANT_ID | CREATE_TIME                | MODIFY_TIME                | UNIT_COUNT | UNIT_CONFIG_ID | ZONE_LIST   | REPLICA_TYPE |
    +------------------+------------+-----------+----------------------------+----------------------------+------------+----------------+-------------+--------------+
    |             1026 | mq_pool_02 |      NULL | 2023-01-10 23:54:24.177685 | 2023-01-10 23:54:24.177685 |          1 |           1020 | zone1;zone2 | FULL         |
    +------------------+------------+-----------+----------------------------+----------------------------+------------+----------------+-------------+--------------+
    1 row in set
    

    DBA_OB_RESOURCE_POOLS 视图的详细说明,参见 oceanbase.DBA_OB_RESOURCE_POOLS

  4. 通过 ALTER RESOURCE POOL 语句,修改资源池配置。

    注意


    • 单条语句只能修改一个属性,如果需要同时修改 UNITUNIT_NUMZONE_LIST 中两条及以上的属性,需要分多条语句执行。
    • 修改 ZONE_LIST 时,每次仅支持添加或删除一个 Zone。


    语法如下:

    ALTER RESOURCE POOL pool_name
        UNIT [=] unit_name,
        UNIT_NUM [=] unit_num,
        ZONE_LIST [=] ('zone' [, 'zone' ...]);
    

    参数说明:

    • pool_name:资源池名称。

    • UNIT:该资源池的资源规格。

    • UNIT_NUM:资源单元个数。增加 Unit 数量时,UNIT_NUM 的值不能大于每个 Zone 内 OBServer 的个数。

      注意

      如果该资源池已经被租户使用,无法通过修改资源池属性的方式修改,需要通过 ALTER RESOURCE TENANT 语句进行修改。

    • ZONE_LIST:资源池的 Zone 分布。

    ALTER RESOURCE POOL 语句的详细说明,参见 ALTER RESOURCE POOL

    ALTER RESOURCE TENANT 语句的详细说明,参见 ALTER RESOURCE TENANT

    示例:

    • 资源池未被分配给租户

      修改资源池 mq_pool_02 的资源规格为 'S2_unit_config',资源单元个数为 3,ZONE_LIST 为 'zone1','zone2','zone3'

      obclient [oceanbase]> ALTER RESOURCE POOL mq_pool_02 UNIT='S2_unit_config';
      Query OK, 0 rows affected
      
      obclient [oceanbase]> ALTER RESOURCE POOL mq_pool_02 UNIT_NUM=3;
      Query OK, 0 rows affected
      
      obclient [oceanbase]> ALTER RESOURCE POOL mq_pool_02 ZONE_LIST=('zone1','zone2','zone3');
      Query OK, 0 rows affected
      
    • 资源池已被分配给租户

      租户资源池修改配置时,UNIT_NUM 需要通过 ALTER RESOURCE TENANT 语句进行修改。

      修改资源池 mq_pool_02 的资源规格为 'S2_unit_config',资源单元个数为 3,ZONE_LIST 为 'zone1','zone2','zone3'

      obclient [oceanbase]> ALTER RESOURCE POOL mq_pool_02 UNIT='S2_unit_config';
      Query OK, 0 rows affected
      
      obclient [oceanbase]> ALTER RESOURCE TENANT mq_t2 UNIT_NUM=3;
      Query OK, 0 rows affected
      
      obclient [oceanbase]> ALTER RESOURCE POOL mq_pool_02 ZONE_LIST=('zone1','zone2','zone3');
      Query OK, 0 rows affected
      
  5. 查看 DBA_OB_RESOURCE_POOLS 视图,确认资源池配置修改结果。

    结果如下,可以看到 UNIT_COUNTUNIT_CONFIG_IDZONE_LIST 参数已经更新。

    obclient [oceanbase]> SELECT * FROM DBA_OB_RESOURCE_POOLS WHERE NAME = 'mq_pool_02';
    +------------------+------------+-----------+----------------------------+----------------------------+------------+----------------+-------------------+--------------+
    | RESOURCE_POOL_ID | NAME       | TENANT_ID | CREATE_TIME                | MODIFY_TIME                | UNIT_COUNT | UNIT_CONFIG_ID | ZONE_LIST         | REPLICA_TYPE |
    +------------------+------------+-----------+----------------------------+----------------------------+------------+----------------+-------------------+--------------+
    |             1026 | mq_pool_02 |      NULL | 2023-01-10 23:54:24.177685 | 2023-01-10 23:56:04.961771 |          2 |           1021 | zone1;zone2;zone3 | FULL         |
    +------------------+------------+-----------+----------------------------+----------------------------+------------+----------------+-------------------+--------------+
    1 row in set


欢迎访问 OceanBase 官网获取更多信息:https://www.oceanbase.com/

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论