---
title: "用户和权限概述 - OceanBase 数据库 V4.3.1 | OceanBase 文档中心"
description: 用户和权限概述 租户 OceanBase 数据库租户是一个逻辑概念，是资源分配的单位，是数据库对象管理和资源管理的基础。租户（Tenant）既是各类数据库对象的容器，又是资源（CPU 、Memory 、IO 等）的容器。OceanBase 数据库租户间的数据是完全隔离的，每个租户都相当于传统数据库的一个数据库实例。O…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.3.1

# 用户和权限概述

更新时间：2026-04-10 11:58:01

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.3.1/zh-CN/600.manage/500.security-and-permissions/300.access-control/200.user-and-permission/100.user-and-permission-overview.md)  

## 租户

OceanBase 数据库租户是一个逻辑概念，是资源分配的单位，是数据库对象管理和资源管理的基础。租户（Tenant）既是各类数据库对象的容器，又是资源（CPU 、Memory 、IO 等）的容器。OceanBase 数据库租户间的数据是完全隔离的，每个租户都相当于传统数据库的一个数据库实例。OceanBase 数据库租户分为：系统租户和普通租户。OceanBase 数据库预定义了用于管理的系统租户 (sys 租户)，其兼容模式为 MySQL。普通租户又分为 Oracle 模式租户和 MySQL 模式租户，简称 Oracle 租户和 MySQL 租户。

## 用户

OceanBase 数据库用户分为：系统租户用户和普通租户用户。系统租户的内置系统管理员为用户 root，MySQL 租户的内置租户管理员为用户 root，Oracle 租户的内置租户管理员为用户 sys。创建用户时，如果当前会话的租户为系统租户，则新建的用户为系统租户用户，反之为普通租户用户。 无论是系统租户还是普通租户，租户管理员创建的用户只能用于本租户内登录。用户名称在租户内是唯一的，不同租户的用户可以同名，通过 用户名@租户名 的形式在系统全局唯一定位一个用户。

## Oracle 模式下的管理用户

OceanBase 数据库的 Oracle 模式在数据库管理方面采用三权分立的安全管理体制，旨在构建安全性数据库。MySQL 模式暂不支持三权分立管理模式。

现实生活中，如果将所有权限赋予同一个人，就可能会有权限滥用的风险，而作为一个大型的数据库，从数据库安全角度出发，就有必要将数据库系统的权限分配给不同的用户角色来管理，并且各自偏重于不同的工作职责，使之能够互相限制和监督，从而有效保证系统的整体安全。

三权分立体制将管理员分为数据库管理员（DBA）、数据库安全管理员（SSO）和数据库审计员（AUDITOR）。

- 数据库管理员（DBA）

  每个数据库至少需要一个数据库管理员来管理，负责安装和升级 OceanBase 数据库管理系统、配置数据库参数、创建数据库对象、分配自主访问权限、导入导出数据，以及数据库的备份和恢复。在 OceanBase 数据库的 Oracle 模式中为内置的 SYS 用户。
 - 数据库安全管理员（SSO）

  负责配置数据库的审计设置、定义新的数据库审计员、查看数据库的审计记录，以及设置系统的安全等级、范围和组，并为主体、客体定义安全标记，从而全面提升系统安全性。在 OceanBase 数据库的 Oracle 模式中为内置的 LBACSYS 用户。
 - 数据库审计员（AUDITOR）

  负责对系统进行强制访问控制、设置需要审计的对象和操作、定义新的数据库审计员、查看和分析审计记录，以及设置系统的策略和标记。通过设置审计，几乎可以跟踪任何人在系统内执行的任何操作，为事后追查提供便利。在 OceanBase 数据库的 Oracle 模式中为内置的 ORAAUDITOR 用户。它们三者之间相互联系、互相制约，共同完成数据库的管理工作。

## 权限

MySQL 模式没有角色，权限模型相对简单。权限检查逻辑和 Oracle 一致。

### 权限分类

- Oracle 模式的权限分为两类：

     - 对象权限：对特定对象的操作权限，例如：某个表对象的 Alter、Select、Update 等权限。
     - 系统权限：允许用户执行在一个 Schema 或者任何 Schema 上进行特定的数据库操作的权限。

      系统权限提供的权限比对象权限大得多。

      关于 Oracle 模式下详细的权限分类，参见 [权限分类](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000821398)。
 - MySQL 模式的权限分为了 3 个级别：

     - 全局权限：可以影响整个租户的权限，例如：修改系统设置、访问所有的表等权限。
     - 数据库权限：可以影响某个特定数据库下所有对象的权限，例如：在对应数据库下创建删除表，访问表等权限。
     - 对象权限：可以影响某个特定对象的权限，例如：访问一个特定的表、视图或索引的权限。

      关于 MySQL 模式下详细的权限分类，参见 [权限分类](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000821411)。

### 权限转授

权限转授解决了授权者集中的问题。通过在授权时指定 `with admin/grant option`，可以同时授予用户将对应权限转授给其他用户的权限。回收对象权限时，要同时回收该用户转授给其他用户的对应权限，即 A 授予 B 权限，B 授予 C 权限，如果 A 收回 B 的权限，C 的权限也会被回收。回收系统权限时，不会级联回收转授的权限。

### 角色

为了方便权限的管理，OceanBase 数据库设定了角色。角色是一组系统权限、对象权限的组合，角色中也可以包含其他角色。可以把角色授予用户，用户就拥有了角色里面的所有权限。

Oracle 模式下，系统在创建新租户时内置了以下默认角色：

- `DBA`：拥有绝大多数的系统权限。
 - `RESOURCE`：拥有 Resource 角色的用户只可以在自己的 Schema 中创建数据库对象。
 - `CONNECT`：拥有 Connect 权限的用户可以登录数据库。
 - `PUBLIC`：该角色适用于整个租户内的用户。默认未授予权限。
 - `STANDBY_REPLICATION`：该角色主要用于基于网络的物理备库场景。

#### 功能适用性

目前仅 OceanBase 数据库的 Oracle 租户支持角色管理。

关于 Oracle 模式下角色管理的相关操作，参见 [角色管理](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000822094)。

MySQL 模式下，暂无系统内置的默认角色。关于 MySQL 模式下角色管理的相关操作，参见 [角色管理](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000822109)。

### 间接权限

用户的权限，包含直接授予的系统权限或者对象权限，也包含授予角色后，通过角色包获得的权限。大部分操作需要的权限，不论是直接授予的还是通过角色间接拥有的权限，都可以满足条件。对于下列场景，需要有直接权限才可以：

- 创建视图时，访问视图中的对象所需的权限。
 - 执行定义者权限的有名 PL 块中的语句所需的权限。

### 权限检查

在 SQL 解析阶段，解析出一条 SQL 语句中所需的所有权限，逐个检查用户是否拥有对应的权限。对于系统操作的权限，如果权限不足则直接报错权限不足。对于访问对象的权限，如果用户在这个对象上没有任何权限，则报错对象不存在；如果用户在这个对象上有其他权限，只是没有需要的权限，则报错权限不足。

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
