当前位置:文档之家› Oracle数据字典

Oracle数据字典

Oracle数据字典
数据字典是Oracle数据库的核心组件,它是由一系列对于用户而言是只读的基础表和视图组成,它保存了关于数据库本身以及其中存储的所有对象的基本信息。

可以认为数据字典记录了数据库实例自身的重要信息。

对数据字典的管理和维护由Oracle系统负责,任何数据库用户都无法对数据字典中的内容进行修改,但是数据库用户可以查看数据字典中的内容。

为了方便用户查看数据字典中的信息,数据字典中的信息也是通过表和视图的形式组织起来的,数据字典和视图都保存在SYSTEM表空间中。

数据字典中的信息实际上中保存在基本表中的,并且只有Oracle系统才有权读取和写入基础表。

基础表中存储的信息通常是经过加密处理的。

视图是一种虚拟表,它本身并不包含数据,其中的数据是经过处理后基本表中的数据。

数据字典中视图的作用是将表中各种信息进行分类,以方便用户获取其中的数据。

大多数情况下,用户可以通过数据字典视图来获取与数据库相关的信息,而不需要访问数据字典表。

在Oracle实例运行期间,需要从数据字典表中读取信息,用于判断用户要访问的对象是否存在等信息。

同时,Oracle还不断地向数据字典表中写入数据,以反映用户对数据库、以及数据库中保存的各对象所做的修改。

例如,用户创建了一个表,这时系统将在数据字典中记录该表的结构信息、表在存储信息等。

对于数据库用户而言,数据字典中的视图好一本关于当前Oracle数据库的参考手册,可以通过SELECT语句查询。

数据库用户由于权限不同,所能访问的数据字典视图的数量和类型也不同。

用户所使用数据字典视图大致可以分为三类,并且各种类型的视图以不同名称的前缀表示。

这三类数据字典视图的介绍如下:
●USER视图USER视图就是以USER_字符为名称前缀的数据字典视图。

每个数据
库用户都有一组属于自己的视图,在USER视图中包含了属于该用户的所有对象
的信息。

●ALL视图ALL视图就是以ALL_字符为名称前缀的数据字视图。

ALL数据字典
视图是USER视图的扩展,在ALL视图中记录了属于该的所有对象的信息,以及
该用户可以访问的属于其他用户的对象的信息。

●DBA视图DBA视图就是以DBA_字符为名称前缀的数据字视图。

在DBA数据
字典视图中记录了全部数据库对象的信息。

在数据库实例的整个运行过程中,Oracle会始终在数据字典中维护一系列的“虚拟”表,在其中记录与数据库活动相关的性能统计信息,这些虚拟表称为动态性能表。

动态性能表不是固定的表,它是在Oracle实例启动时动态地创建,并向其写入信息;而当Oracle关闭时,动态性能表将被丢弃。

所有的动态性能表的名称都是以V$为开头。

Oracle 自动在动态性能表的基础上创建一个视图,这些视图被称为动态性能视图。

例如,动态性能视图V$SGA记录了系统全局存储区SGA的信息,通过查询该动态性能视图,用户使可以获取当前数据库实例的全局存储区SGA的信息。

SQL> select name,value from v$sga;
NAME ALUE
-------------------- ----------
Fixed Size 1333312
Variable Size 310380480
Database Buffers 58720256 Redo Buffers 6201344。

相关主题