当所选集群为 V4.0 及以上版本时,不支持按 Zone 级别单独设置 Unit 数量,所有 Zone 的 Unit 数量需保持一致(默认为 1)。
1
当所选集群版本为 V4.0 以下时,多个 Zone 可以设置不同的 Unit 数量。
在OceanBase数据库中,调整租户的内存资源通常是通过调整租户所分配的Unit数量或调整Unit本身的资源容量来进行的。由于OceanBase按照Unit来管理物理资源,内存是其中的一项关键资源,可以通过增加或减少Unit给租户带来的内存资源来在线调整租户的内存大小。
以下是一个大概的步骤描述:
查看当前租户资源分配:
首先,登录OceanBase的管理系统,查询当前租户所分配的Unit及其对应的资源配额。可以使用GV$OB_UNIT
视图来查看当前集群中所有Unit的详细信息,包括各个Unit关联的租户ID及其内存、CPU等资源。
评估和决定调整方案:
根据业务需求和系统负载,确定是增加还是减少租户的内存资源。如果需要增加内存,则可能需要有额外的空闲Unit可供分配;如果是在现有Unit内增加内存,那么可能涉及到修改Unit的资源规格。
在线调整内存资源:
使用OceanBase的管理命令或管理系统界面来修改租户的资源分配。具体命令可能类似于Alter Tenant
这样的DDL操作,但是具体的语法和参数可能会因OceanBase版本的不同而有所差异。
-- 假设有一个新的资源单元配置
ALTER UNIT 'new_unit_id' SET MEMORY_SIZE=xxxGB; -- 设置新的内存大小
ALTER TENANT 'tenant_name' SET RESOURCE_UNIT='new_unit_id'; -- 将租户切换到新的资源单元
GV$SYS_RESOURCE_POOL
等相关视图或使用系统监控工具确认租户的内存资源是否已成功调整,并关注租户的性能和稳定性。内存配置步骤如下:
1、使用 root 用户登录 OceanBase 集群的 sys 租户,执行以下 SQL 语句,确认当前租户使用的 UNIT_CONFIG NAME。
SELECT NAME FROM DBA_OB_UNIT_CONFIGS;
+-----------------+
| NAME |
+-----------------+
| sys_unit_config |
| test_unit |
+-----------------+
2 rows in set
2、复制租户的 unit_config name,使用如下命令,完成内存扩容。
ALTER RESOURCE UNIT test_unit MIN_CPU = 2, MAX_CPU = 2, MEMORY_SIZE = '10G', MAX_IOPS = 10000, MIN_IOPS = 10000;
当前版本中,仅 CPU、Memory 配置生效,其他 I/O 参数(例如 IOPS)暂不生效。
——参考来源于oceanbase官方文档。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。