oracle官方:http://docs.oracle.com/cd/E11882_01/server.112/e40540/datadict.htm#CNCPT002
数据字典是只读的表和视图,动态性能视图在数据库运行时不断进行更新。
Overview of the Data Dictionary
数据字典提供数据库的管理元数据。包含以下信息:
-
所有schema object(模式对象 注1)的定义,包含列的默认值及完整性约束。
-
schema object所分配及已使用的空间
-
为oracle用户分配的用户、特权、角色,用户的审计信息
数据字典是oracle数据库进行数据管理的主要部分。例如,oracle执行以下内容:
-
通过查询数据字典来获得用户、模式对象、存储结构
-
每当下达一次DDL(数据定义语言)声明,更新一次数据字典
数据字典存在数据库表中,可以使用sql访问。
数据字典定义
数据字典由以下类型的对象组成:
-
基本表
这些底层表存储数据库信息,只有数据库可以访问及修改这些表。一般用户不会访问这些表,因为数据格式化存储,并进行了加密
-
视图
这些视图将基本表中的数据解析为有用信息,例如用户,表名。这些视图包含基本表中所有对象的命名和描述。一些视图可以被所有用户访问,一些视图则只提供给管理员使用。
数据字典视图按照用户分组管理。通常来说,三组视图通过其前缀区分。每一组视图只提供给其对应的用户查看。如下表:
Prefix | User Access | Contents | Notes |
---|---|---|---|
|
Database administrators |
All objects |
Some |
|
All users |
Objects to which user has privileges |
Includes objects owned by user. These views obey the current set of enabled roles. |
|
All users |
Objects owned by user |
Views with the prefix |
不是所有的视图都包含前述三个用户组的数据。例如,数据字典只包含DBA_LOCK而不包含ALL_LOCK视图。
系统自带的DICTIONARY视图包括所有数据字典视图的名字和简短说明。例: