首批通过分布式安全可靠测评,为关键业务系统打造
视图体系概述
更新时间:2024-10-31 23:00:00
OceanBase 数据库 V4.x 视图体系大体上可以分为五类:OceanBase 自有视图、MySQL 兼容视图、Oracle 兼容视图、MySQL 移植 Oracle 视图和系统租户移植 Oracle 视图。体系概况如下表所示:
| 视图体系 | 类别 | 格式 |
|---|---|---|
| OceanBase 自有视图 | 数据字典视图 | DBA_OB_* |
| CDB_OB_* | ||
| 动态性能视图 | GV$OB_* | |
| V$OB_* | ||
| MySQL 兼容视图 | 数据字典视图 | information_schema.* |
| mysql.* | ||
| Oracle 兼容视图 | 数据字典视图 | SYS.DBA_*、SYS.USER_*、SYS.ALL_* |
| 动态性能视图 | SYS.V$*、SYS.GV$* | |
| MySQL 租户移植 Oracle 视图 | 数据字典视图 | oceanbase.DBA_* |
| 动态性能视图 | oceanbase.V$*、oceanbase.GV$* | |
| 系统租户移植 Oracle 视图 | 数据字典视图 | oceanbase.CDB_* |
OceanBase 自有视图
OceanBase 自有视图包含数据字典视图和动态性能视图两类。
数据字典视图的格式为
DBA_OB_*和CDB_OB_*:DBA_OB_*: 系统租户可见视图,显示系统租户管理的数据库对象信息;所有租户可见的视图,显示 OceanBase 特有的租户级数据库对象信息。CDB_OB_*: 只显示系统租户下访问所有租户的数据库对象信息,一般都对应租户级的数据字DBA_OB_*。
动态性能视图的格式为
GV$OB_*和V$OB_*:GV$OB_*: 用于显示整个集群的运行状态和性能指标信息,这类视图可以在整个集群中访问,提供全局状态信息。 根据访问权限的不同有以下区分:- 在 SYS 租户下访问,显示的是所有租户的信息。
- 在普通租户下访问,显示的是本租户的信息。
V$OB_*: 用于显示客户端连接到的节点的运行状态和性能指标信息,这类视图只能用于提供客户端连接到的节点的状态信息,如果需要访问其他节点的状态信息,请使用GV$OB_*视图。
MySQL 兼容视图
MySQL 兼容视图只包含数据字典视图的两种格式:
information_schema.*: 提供了对 MySQL 租户中数据库元数据(包括:数据库或表的名称、列的数据类型或访问权限)的访问。mysql.*: 包含存储数据库对象元数据的数据字典表和用于其他操作目的的系统表。例如:mysql.help_*视图包含了服务器端的一些帮助信息;mysql.time_zone_*记录了时区相关的信息;mysql.user视图和mysql.db视图记录了用户权限相关的一些信息。
Oracle 兼容视图
Oracle 兼容视图包含数据字典和动态性能视图两类。
数据字典视图的格式为
SYS.DBA_*、SYS.USER_*、SYS.ALL_*:SYS.DBA_*: 显示整个数据库中的所有相关信息。DBA_视图需要使用管理员权限访问。SYS.ALL_*: 用于用户对数据库的整体概览。除了用户拥有的 Schema 对象之外,这些视图还返回通过公开或显式授权给用户的 Schema 对象。SYS.USER_*: 仅显示与用户相关的行,返回ALL_视图中信息的子集,具有与其他视图相同的列,但是隐含列OWNER。
动态性能视图的格式为
SYS.V$*和SYS.GV$*:SYS.V$*: 用于显示客户端连接到的节点的运行状态和性能指标信息,这类视图只能用于提供客户端连接到的节点的状态信息,如果需要访问其他节点的状态信息,请使用SYS.GV$*视图。SYS.GV$*: 用于显示整个集群的运行状态和性能指标信息,这类视图可以在整个集群中访问,提供全局状态信息。 根据访问权限的不同有以下区分:- 在 SYS 租户下访问,显示的是所有租户的信息。
- 在普通租户下访问,显示的是本租户的信息。
MySQL 租户移植 Oracle 视图
MySQL 租户移植 Oracle 视图包含数据字典和动态性能视图两类。
数据字典视图的格式为
oceanbase.DBA_*:是一些用于显示数据库的元数据和性能指标信息的视图,类似于 Oracle 数据库中的
DBA_*视图。这些视图通常提供了数据库管理员级别的访问权限,可以查看数据库中所有对象和系统状态的信息。动态性能视图的格式为
oceanbase.V$*和oceanbase.GV$*:oceanbase.V$*: 用于访问当前节点的性能和状态信息的视图,只能在当前节点访问。oceanbase.GV$*: 用于访问整个集群的性能和状态信息的视图,可以在整个集群中访问。
系统租户移植 Oracle 视图
系统租户移植 Oracle 视图只包含数据字典视图,格式为 oceanbase.CDB_*: 该类视图可用于获取包含在系统租户和普通租户中的部分数据库对象的有关信息,包括所有对象信息、分区信息、表信息等。这些数据库对象在 Oracle 数据库中有标准的数据字典视图,并且支持跨租户数据访问,例如:CDB_OBJECTS,可以展示所有租户的数据库对象信息。