oceanbase创建租户(代码片段)

疯狂的骆驼 疯狂的骆驼     2023-05-09     239

关键词:

OceanBase创建租户

使用root用户连接sysy租户

使用root用户连接sys租户

[admin]# mysql -h 192.168.1.71 -P2881 -D oceanbase -uroot@sys -pOceanbase2881 -A

创建单元规格

查看已创有的资源单元规格

obclient [oceanbase]> select * from __all_unit_config;
+----------------------------+----------------------------+----------------+-----------------+---------+---------+-------------+---------------+----------+----------+-------------+
| gmt_create                 | gmt_modified               | unit_config_id | name            | max_cpu | min_cpu | memory_size | log_disk_size | max_iops | min_iops | iops_weight |
+----------------------------+----------------------------+----------------+-----------------+---------+---------+-------------+---------------+----------+----------+-------------+
| 2023-04-24 18:33:06.566391 | 2023-04-24 18:33:06.566391 |              1 | sys_unit_config |       1 |       1 |  5368709120 |    5368709120 |    10000 |    10000 |           1 |
+----------------------------+----------------------------+----------------+-----------------+---------+---------+-------------+---------------+----------+----------+-------------+

创建单元规格语法

CREATE RESOURCE UNIT unit_name 
MEMORY_SIZE [=] \'size_value\',
MAX_CPU [=] cpu_num, 
[MAX_IOPS [=] iops_num,]
[MIN_CPU [=] cpu_num,]
[MIN_IOPS [=] iops_num,] 
[IOPS_WEIGHT [=]iopsweight,]
[LOG_DISK_SIZE [=] \'size_value\'];

创建单元规格

create resource unit s1 max_cpu=1,memory_size=\'5G\';

查看已创建的单元规格

obclient [oceanbase]> select * from __all_unit_config;
+----------------------------+----------------------------+----------------+-----------------+---------+---------+-------------+---------------+----------+----------+-------------+
| gmt_create                 | gmt_modified               | unit_config_id | name            | max_cpu | min_cpu | memory_size | log_disk_size | max_iops | min_iops | iops_weight |
+----------------------------+----------------------------+----------------+-----------------+---------+---------+-------------+---------------+----------+----------+-------------+
| 2023-04-24 18:33:06.566391 | 2023-04-24 18:33:06.566391 |              1 | sys_unit_config |       1 |       1 |  5368709120 |    5368709120 |    10000 |    10000 |           1 |
| 2023-04-25 15:18:41.373470 | 2023-04-25 15:18:41.373470 |           1003 | s1              |       1 |       1 |  5368709120 |   16106127360 |    10000 |    10000 |           1 |
+----------------------------+----------------------------+----------------+-----------------+---------+---------+-------------+---------------+----------+----------+-------------+

创建资源池

创建资源池的语法

CREATE RESOURCE POOL poolname 
UNIT [=] unitname, 
UNIT_NUM [=] unitnum, 
ZONE_LIST [=] (\'zone\' [, \'zone\' ...]);

创建资源池(需要确保节点资源充裕)

create resource pool my_pool unit=\'s1\',unit_num=1,zone_list=(\'zone1\',\'zone2\',\'zone3\');

 查看资源分配细节

obclient [oceanbase]> select t1.name resource_pool_name,t2.name unit_config_name,t2.max_cpu,t2.min_cpu,truncate(t2.memory_size/1024/1024/1024,2) memory_size_gb,t3.unit_id,t3.zone,concat(t3.svr_ip,\':\',t3.svr_port) observer,t4.tenant_id,t4.tenant_name from __all_resource_pool t1 join __all_unit_config t2 on (t1.unit_config_id=t2.unit_config_id) join __all_unit t3 on (t1.resource_pool_id = t3.resource_pool_id) left join __all_tenant t4 on (t1.tenant_id=t4.tenant_id)order by t1.resource_pool_id, t2.unit_config_id, t3.unit_id;
+--------------------+------------------+---------+---------+----------------+---------+-------+-------------------+-----------+-------------+
| resource_pool_name | unit_config_name | max_cpu | min_cpu | memory_size_gb | unit_id | zone  | observer          | tenant_id | tenant_name |
+--------------------+------------------+---------+---------+----------------+---------+-------+-------------------+-----------+-------------+
| sys_pool           | sys_unit_config  |       1 |       1 |           5.00 |       1 | zone1 | 192.168.1.71:2882 |         1 | sys         |
| sys_pool           | sys_unit_config  |       1 |       1 |           5.00 |       2 | zone2 | 192.168.1.72:2882 |         1 | sys         |
| sys_pool           | sys_unit_config  |       1 |       1 |           5.00 |       3 | zone3 | 192.168.1.73:2882 |         1 | sys         |
| my_pool            | s1               |       1 |       1 |           5.00 |    1001 | zone1 | 192.168.1.71:2882 |      NULL | NULL        |
| my_pool            | s1               |       1 |       1 |           5.00 |    1002 | zone2 | 192.168.1.72:2882 |      NULL | NULL        |
| my_pool            | s1               |       1 |       1 |           5.00 |    1003 | zone3 | 192.168.1.73:2882 |      NULL | NULL        |
+--------------------+------------------+---------+---------+----------------+---------+-------+-------------------+-----------+-------------+

 创建租户

 创建租户的语法

CREATE TENANT [IF NOT EXISTS] tenant_name 
     [tenant_characteristic_list] [opt_set_sys_var];

tenant_characteristic_list: 
  tenant_characteristic [, tenant_characteristic...]

tenant_characteristic: 
      COMMENT \'string\'  
    | CHARACTER SET | CHARSET [=] charsetname 
    | COLLATE [=]  collationname
    | ZONE_LIST [=] (zone [, zone...]) 
    | PRIMARY_ZONE [=] zone  
    | DEFAULT TABLEGROUP [=] NULL | tablegroup
    | RESOURCE_POOL_LIST [=](poolname [, poolname...])
    | LOCALITY [=] \'locality description\'

opt_set_sys_var:
  SET | SET VARIABLES | VARIABLES system_var_name = expr [,system_var_name = expr] ...

 查看租户信息

mysql> select * from DBA_OB_TENANTS;
+-----------+-------------+-------------+----------------------------+----------------------------+--------------+------------------------------+-------------------+--------------------+--------+---------------+--------+
| TENANT_ID | TENANT_NAME | TENANT_TYPE | CREATE_TIME                | MODIFY_TIME                | PRIMARY_ZONE | LOCALITY                     | PREVIOUS_LOCALITY | COMPATIBILITY_MODE | STATUS | IN_RECYCLEBIN | LOCKED |
+-----------+-------------+-------------+----------------------------+----------------------------+--------------+------------------------------+-------------------+--------------------+--------+---------------+--------+
|         1 | sys         | SYS         | 2023-04-24 18:33:06.821930 | 2023-05-09 09:28:07.989177 | RANDOM       | FULL1@zone1, FULL1@zone2 | NULL              | MYSQL              | NORMAL | NO            | NO     |
+-----------+-------------+-------------+----------------------------+----------------------------+--------------+------------------------------+-------------------+--------------------+--------+---------------+--------+

创建租户

create tenant my_tenant resource_pool_list=(\'my_pool\'),primary_zone=\'RANDOM\',comment \'my tenant\',charset=\'utf8\' set ob_tcp_invited_nodes=\'%\',lower_case_table_names=0;

 查看租户信息

mysql> select * from DBA_OB_TENANTS;
+-----------+-------------+-------------+----------------------------+----------------------------+--------------+------------------------------+-------------------+--------------------+--------+---------------+--------+
| TENANT_ID | TENANT_NAME | TENANT_TYPE | CREATE_TIME                | MODIFY_TIME                | PRIMARY_ZONE | LOCALITY                     | PREVIOUS_LOCALITY | COMPATIBILITY_MODE | STATUS | IN_RECYCLEBIN | LOCKED |
+-----------+-------------+-------------+----------------------------+----------------------------+--------------+------------------------------+-------------------+--------------------+--------+---------------+--------+
|         1 | sys         | SYS         | 2023-04-24 18:33:06.821930 | 2023-05-09 09:28:07.989177 | RANDOM       | FULL1@zone1, FULL1@zone2 | NULL              | MYSQL              | NORMAL | NO            | NO     |
|      1003 | META$1004   | META        | 2023-04-25 16:54:07.990306 | 2023-05-09 09:28:31.056441 | RANDOM       | FULL1@zone1, FULL1@zone2 | NULL              | MYSQL              | NORMAL | NO            | NO     |
|      1004 | my_tenant   | USER        | 2023-04-25 16:54:07.991849 | 2023-05-09 09:28:31.056441 | RANDOM       | FULL1@zone1, FULL1@zone2 | NULL              | MYSQL              | NORMAL | NO            | NO     |
+-----------+-------------+-------------+----------------------------+----------------------------+--------------+------------------------------+-------------------+--------------------+--------+---------------+--------+

连接租户 

 新创建的租户(root@my_tenant)默认无密码

[admin]# mysql -h192.168.1.71 -P2883 -D oceanbase -uroot@my_tenant#ob_cluster -p -A
mysql> alter user root identified by \'OceanBase010\';

 

创建租户参考:https://www.oceanbase.com/docs/common-oceanbase-database-cn-10000000001692881

 

oceanbase-安装(代码片段)

文章目录部署规划机器准备统一配置hosts设置设置机器名和静态ip关闭大页配置信息查看时钟源ntp配置(需要所有机器root)磁盘规划创建用户配置limits.conf配置sysctl.conf关闭防火墙关闭SELinux克隆虚拟机差异化配置中控机设... 查看详情

powershell使用本地用户创建vra租户并添加目录(代码片段)

查看详情

shopenstackcli命令使用标识v3(包含组)创建新项目/租户和网络(代码片段)

查看详情

oceanbase-安装(代码片段)

...&解压安装OBD安装数据库部署规划本文主要是安装部署oceanbase4.0.按照官方的要求,测试环境要求最低2C8G(实测可用内存最少10g,虚拟机设置12g采购)我准备了几台centos7.9的虚拟机,配置如下机器名ip地址配... 查看详情

springboot整合oceanbase,实现oracle无缝切换到oceanbase(代码片段)

...💅开源项目:【轮子之王】文章目录前言Springboot整合Oceanbase一、引入依赖二、添加数据库连接配置三、处理异常Mybatis-plus框架异常四、数据库方言五、设 查看详情

springboot整合oceanbase,实现oracle无缝切换到oceanbase(代码片段)

...💅开源项目:【轮子之王】文章目录前言Springboot整合Oceanbase一、引入依赖二、添加数据库连接配置三、处理异常Mybatis-plus框架异常四、数据库方言五、设 查看详情

在wso2中为每个租户配置动态端点(代码片段)

...tenant/x/。我想知道最好的方法是什么。我可以为每个租户创建一个不同的API,并在此版本的API中配置端点,但我认为如果我尝试维护它,最终会产生很多开销。我尝试的另一种方法是创建动态端点并使用消息中介。但我找不到如... 查看详情

azure-如何将资源从租户迁移到另一个租户(代码片段)

...中的订阅,如果我下载虚拟机​​的vhd,我必须手动重新创建虚拟机配置答案最佳和最可靠的方法是通过AzureBillingSupport。它是免费的支持服务,可以处理这类支持问题。虽然有一些非常重要的事情(难以改变的硬性要求):目 查看详情

分享一个linux管理文档多租户的例子(代码片段)

...其他账户不拥有该目录的任何权限。需要使用root账户,创建账户、群组,设置目录权限,然后搭建开发环境。创建账户相关信 查看详情

多租户改造(代码片段)

一、多租户概念1.多租户是什么意思?怎么理解?​多租户是一种单个软件实例可以为多个不同用户组提供服务的软件架构。在云计算中,多租户也可以指共享主机,其服务器资源将在不同客户之间进行分配。与... 查看详情

openstack租户用户管理(代码片段)

查询租户列表[[email protected]~]#openstackprojectlist+----------------------------------+--------------------+|ID|Name|+----------------------------------+--------------------+||91550f3ddf5940ea9a9d17d 查看详情

springboot整合oceanbase,实现oracle无缝切换到oceanbase(代码片段)

...💅开源项目:【轮子之王】文章目录前言Springboot整合Oceanbase一、引入依赖二、添加数据库连接配置三、处理异常Mybatis-plus框架异常四、数据库方言五、设置方言的必要性六、数据库驱动与方言写在最后前言  随着去“IOE”... 查看详情

springboot整合oceanbase,实现oracle无缝切换到oceanbase(代码片段)

...💅开源项目:【轮子之王】文章目录前言Springboot整合Oceanbase一、引入依赖二、添加数据库连接配置三、处理异常Mybatis-plus框架异常四、数据库方言五、设置方言的必要性六、数据库驱动与方言写在最后前言  随着去“IOE”... 查看详情

在从 UI (ABP.IO) 创建租户的过程中创建新角色(通过代码)

】在从UI(ABP.IO)创建租户的过程中创建新角色(通过代码)【英文标题】:CreatingnewRole(bycode)duringtheTenantcreationprocessfromUI(ABP.IO)【发布时间】:2021-03-2014:01:48【问题描述】:我正在尝试在ABP.IO框架版本4上从UI创建新租户时添加角色... 查看详情

猿创征文|oceanbase社区版集群部署(代码片段)

📢📢📢📣📣📣哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10年DBA工作经验一位上进心十足的【大数据领域博主】!😜😜😜中国DBA联盟(ACDU)成员,目前从 查看详情

efcore(codefirst)通过自定义migrationhistory实现多租户使用同一数据库时更新数据库结构(代码片段)

...库。由于这个原因,无法通过 Database.EnsureCreated()自动创建多个结构相同但名字不同的表。所以我在文中提到,需要自己跑脚本去创建多有的表。虽然我依然认为在多租户的情况下使用sql管理表是更可靠的方案,但如果可以利... 查看详情

servicestack多租户的实现方案(代码片段)

以SqlServer为例子说明ServiceStack实现多租户,在SqlServer中创建4个Database:TMaster、T1,T2,T3,为了安全起见每个Database不用sa账号,而是用独立的数据库的账号和密码,为了方便演示这密码设置成一样租户TMasterDatabase:TMaster 账号... 查看详情

springcloud多租户灰度设计(代码片段)

需求SaaS微服务环境中,每个租户都有自己独立的数据库,当应用服务升级时(通常数据库表结构或数据需要同步改动时),需要保证升级后的租户能够使用升级后的应用服务,没有升级的租户仍然使用旧... 查看详情