DBA_OB_RESOURCE_POOLS 和 DBA_OB_UNIT_CONFIGS 视图权限命名问题

【 使用环境 】测试环境
【 OB 】
【 使用版本 】4.3.5.5
【问题描述】

dba_ob_resource_pools和dba_ob_unit_configs 只能被sys租户查看,普通用户看不了,这是否以下官方的定义有冲突。

官方定义

https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000003976626

展示系统租户管理的数据库对象的基本信息。命名特点以 DBA_CDB_ 开头,DBA_ 开头的视图展示的是各个租户内的信息,比如 DBA_OB_LS 视图展示的是租户内的日志流信息,系统租户内的 DBA_OB_LS 表只展示系统租户自身的日志流信息。CDB_ 开头的视图是系统租户专用的,用于在系统租户内查看集群所有租户的数据库状态,比如 CDB_OB_LS 视图展示的是集群所有租户的所有日志流信息。一般每个 DBA_ 开头的视图在系统租户下都有对应的 CDB_ 开头的视图。

我理解如下:

DBA_前缀的视图:展示各租户内的信息,普通租户理论上应能查看本租户相关的数据
CDB_前缀的视图:仅系统租户专用,用于查看集群所有租户的全局信息

资源池和资源规格是集群级对象,由 sys 租户统一管理。且当未和租户绑定时,和租户并没有什么关系,想看也看不了。

问题

  1. 这2个视图为什么不直接把前辍定义为cdb_?
  2. 当和租户有绑定关系后,为什么普通用户也看不了自己的资源?
2 个赞

1.cdb专指是sys租户下查询所有租户的信息,前提是每个租户都应该有这个表,才会定义cdb视图,如果只是sys租户自己有这个表,应该使用dba。
2.这两个视图分别查询的是__all_resource_pool和__all_unit_config内部表,这两张内部表是sys租户的,普通租户没有这个内部表,所以只能在sys租户下查询。

2 个赞

如果只是sys租户自己有这个表,应该使用dba。-----------学习了,谢谢

应该能看吧