数据字典主要四部分

内部RDBMS表:x$*

用于跟踪内部数据库信息,维持DB的正常运行。

加密的,不允许sysdba以外的用户直接访问,显示授权不被允许。

字典表:*$

tab$,obj$ , ts$等,用来存储表、索引、约束以及其他数据库结构的信息。

动态性能视图:gv$*v$

记录了DB运行时信息和统计数据,大部分动态性能视图被实时更新以反映DB当前状态。

数据字典视图:user_*、all_*、dba_*

在非sys用户下,我们访问的都是同义词,而不是V$视图或GV视图。

备注:数据字典中的表是不能直接被访问的,能访问的是其中的视图

数据字典视图:静态数据字典视图动态数据字典视图。

1)静态数据字典视图

在用户访问数据字典时内容不会发生改变。

user_* 该用户方案对象的信息)

all_* 该用户可以访问的所有对象的信息

dba_* 全部数据库对象的信息

2)动态数据字典视图

由于当数据库运行的时候它们会不断进行更新,所以称它们为动态数据字典视图。例如,提供了关于内存和磁盘的运行情况,只能对其进行只读访问而不能修改。

一般以v$开头的视图,比如v$access

备注:数据库启动时,动态创建x$*,在x$*基础上创建gv$*,在gv$*基础上创建v$*表-->gv$(视图)--->v$(视图)

数据字典视图小结:

user_ 为前缀,用来记录用户对象的信息

all_ 为前缀,用来记录用户对象的信息及被授权访问的对象信息

dba_ 为前缀,用来记录数据库实例的所有对象的信息

gv$ 为前缀,用来记录分布式环境下所有实例的动态信息

v$ 为前缀,用来记录与数据库活动相关的性能统计动态信息

原文链接:Oracle入门精读47-Oracle数据字典分类(dictionary)

最后修改:2023 年 10 月 16 日
如果觉得我的文章对你有用,请随意赞赏