您的位置:首页 > 数据库 > Oracle

Oracle Concept 的一些笔记 -- Data Dictionary

2009-12-09 10:59 204 查看
主要讲述数据库中一些只读的表和视图

数据词典主要是Oracle中一些只读表和视图的集合,这些表主要描述了数据库的信息,主要包括以下信息

1 数据库中各schema(tables, views, indexes, clusters, synonyms, sequences, procedures, functions, packages, triggers等等)的定义信息

2 各schema对象已经分配的,已经使用的空间

3 各列的默认值

4 oralce数据库的用户名列表

5 各用户所有的priviledge 和role

6 审计信息,例如谁何时在哪个schema对象上做过什么操作

7 其他的一些数据库信息

数据词典的结构

基表 - 存储一些数据库的信息,一般只有oracle进程读写,用户很少使用,这些表的存储格式和其他表不同。

用户访问的视图 -- 建立在基表基础上,供用户访问查询

SYS用户是这些表和视图的OWNER

一般用在下面三个情况

1 Oracle用来查询

2 Oracle改变这些信息,当DDL发生后

3 用户查询

当数据库版本变化时,Oracle提供了package来改动data dictionary的值

在用户进行数据库操作时,Oracle会查询数据词典确定语句的正确性,如是否存在sql使用的对象,用户是否有权限

Oracle为这些视图和表创建了很多的public synonyms

为了增加访问的性能,大部分的数据词典被保存在SGA的dictionary cache中

Parsing information is typically kept in the caches. The
COMMENTS
columns describing the tables and their columns are not cached unless they are accessed frequently. (不懂)

注:数据词典存在于system的表空间

数据词典前缀的含义

user 用户schema中的内容

all 用户的访问权限

dba 所有用户的schema

所有V_$开头的表都被称为动作性能表(dynamic performance table),Oracle也为这些表创建了synonyms,开头为v$.

Package DBMS_METADATA可以用来导出数据库信息。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: