在Oracle中,大多数数据字典表有三种形式,用于描述不同类型的对象
ALL_* USER_* DBA_*DBA_*表包含有关数据库中所有指定对象的信息.因此,无论您是否有权访问底层对象,DBA_TABLES都将拥有有关数据库中每个表的信息.
ALL_*表包含有关您有权访问的数据库中所有指定对象的信息.因此ALL_TABLES将包含有关您有权访问的数据库中所有表的信息.
最后,USER_*表包含有关您拥有的数据库中所有指定对象的信息.因此,USER_TABLES将包含有关您拥有的所有表的信息(即模式中的所有表).
默认情况下,普通用户无权访问DBA_*表,只能访问USER_*和ALL_*表.如果要查询DBA_*表,则需要SELECT ANY DICTIONARY特权或SELECT_CATALOG_ROLE角色.
除DBA/ALL/USER_*数据字典视图外,Oracle还为动态性能信息提供V $视图(即V $ SESSION包含有关数据库中所有会话的信息).对于每个V $视图,还有一个GV $视图,如果您在RAC集群上,它会显示来自所有实例的信息.