基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
用户和权限概述
更新时间:2026-08-14 11:48:11
租户
OceanBase Database AI 租户是一个逻辑概念,是资源分配的单位,是数据库对象管理和资源管理的基础。租户(Tenant)既是各类数据库对象的容器,又是资源(CPU 、Memory 、IO 等)的容器。OceanBase Database AI 租户间的数据是完全隔离的,每个租户都相当于传统数据库的一个数据库实例。OceanBase Database AI 租户分为:系统租户和普通租户。OceanBase Database AI 预定义了用于管理的系统租户 (sys 租户)。
用户
OceanBase Database AI 用户分为:系统租户用户和普通租户用户。系统租户的内置系统管理员为用户 root,普通租户的内置租户管理员为用户 root。创建用户时,如果当前会话的租户为系统租户,则新建的用户为系统租户用户,反之为普通租户用户。无论是系统租户还是普通租户,租户管理员创建的用户只能用于本租户内登录。用户名称在租户内是唯一的,不同租户的用户可以同名,通过 用户名@租户名 的形式在系统全局唯一定位一个用户。
权限
权限分类
权限分为了 3 个级别:
全局权限:可以影响整个租户的权限,例如:修改系统设置、访问所有的表等权限。
数据库权限:可以影响某个特定数据库下所有对象的权限,例如:在对应数据库下创建删除表,访问表等权限。
对象权限:可以影响某个特定对象的权限,例如:访问一个特定的表、视图或索引的权限。
关于详细的权限分类,参见 权限分类。
权限转授
权限转授解决了授权者集中的问题。通过在授权时指定 with grant option,可以同时授予用户将对应权限转授给其他用户的权限。回收对象权限时,要同时回收该用户转授给其他用户的对应权限,即 A 授予 B 权限,B 授予 C 权限,如果 A 收回 B 的权限,C 的权限也会被回收。回收系统权限时,不会级联回收转授的权限。
角色
为了方便权限的管理,OceanBase Database AI 设定了角色。角色是一组权限的组合,角色中也可以包含其他角色。可以把角色授予用户,用户就拥有了角色里面的所有权限。
暂无系统内置的默认角色。关于角色管理的相关操作,参见 角色管理。
间接权限
用户的权限,包含直接授予的系统权限或者对象权限,也包含授予角色后,通过角色包获得的权限。大部分操作需要的权限,不论是直接授予的还是通过角色间接拥有的权限,都可以满足条件。对于下列场景,需要有直接权限才可以:
- 创建视图时,访问视图中的对象所需的权限。
- 执行定义者权限的有名 PL 块中的语句所需的权限。
权限检查
在 SQL 解析阶段,解析出一条 SQL 语句中所需的所有权限,逐个检查用户是否拥有对应的权限。对于系统操作的权限,如果权限不足则直接报错权限不足。对于访问对象的权限,如果用户在这个对象上没有任何权限,则报错对象不存在;如果用户在这个对象上有其他权限,只是没有需要的权限,则报错权限不足。