Oracle数据字典是Oracle数据库的最重要的组成部分,是Oracle存放有关数据库信息的地方,其用途是用来描述数据的,它提供了数据库的系统信息,以及例程的信息。
1.Oracle数据字典的概念
数据字典是Oracle数据库的核心组件,它由一系列只读的数据字典表和数据字典视图组成。数据字典表中记录了数据库的系统信息,如方案对象的信息,例程运行的性能信息(如例程的状态,SGA区的信息)。数据字典表达所有者是SYS用户,其数据字典表和数据字典视图都被保存在SYSTEM表空间中。所以,为了性能和安全的原因,Oracle建议不要在SYSTEM表空间中创建其它方案对象。
数据字典主要保存如下信息:
1)各种方案对象的定义信息,如表,视图,索引,同义词,绪论,存储过程,函数,包,触发器和各种对象。
2)存储空间的分配信息,如为某个对象分配了多少存储空间,该对象使用了多少存储空间。
3)安全信息,如账户,权限,角色,完整性约束信息。
4)例程运行时代性能和统计信息。
5)其他数据库本身的基本信息。
2.Oracle数据字典内容包括:
1)数据库中所有模式对象的信息,如表、视图、簇、及索引等。
2)分配多少空间,当前使用了多少空间等。
3)列的缺省值。
4)约束信息的完整性。
5)Oracle用户的名字。
6)用户及角色被授予的权限。
7)用户访问或使用的审计信息。
8)其它产生的数据库信息。
3.Oracle数据字典的主要用途是:
1)Oracle通过查询数据字典表或数据字典视图来获取有关用户,方案对象。对象的定义信息以及其他存储结构的信息,以便确认权限,方案对象的存在性和正确性。
2)在每次执行DDL语句修改方案对象和对象后,Oracle都在数据字典中记录下所做的修改。
3)用户可以从数据字典的只读视图中,获取各种与方案对象和对象有关的信息。
4)DBA可以从数据字典的动态性能视图中,监视例程的运行状态,为性能调整提供依据。
4.Oracle数据字典的组成
为了方便使用,数据字典中的信息通过表和视图的方式组织。数据字典的组成包括数据字典表和数据字典视图两部分。
5.Oracle数据字典表
数据字典表中的所有信息实际上都是保存在数据字典表中的。数据字典表中存储的信息通常都是经过加密处理的。数据字典表属于SYS用户,通过在创建数据库时自动运行SQL.BSQ脚本来创建数据字典表。大部分数据字典表的名称中都包含$等这样的特殊符号。
【编辑推荐】