[笔记]---oracle数据字典
2013-04-11 16:34
302 查看
8. Oracle数据字典
数据字典是元数据(metadata)的存储地点
Oracle使用数据字典记录和管理对象信息和安全信息
包括如下内容:
1. 所有数据库schema对象的定义(表、视图、索引、聚族、同义词、序列、过程、函数、包、触发器等)
2. 数据库的空间分配和使用情况
3. 字段缺省值、完整性约束信息
4. 用户名、角色、权限
5. 审计信息
6. ...
数据字典是数据库的核心,一般情况下是只读的!oracle不建议修改,因为这样可能会导致数据库紊乱而无法恢复!
oracle对这类操作不负责任!
组成:
内部RDBMS(X$表)
数据字典表
动态性能视图(V$)
数据字典视图
8.1 X$是数据库的核心,加密命名,是oracle公司的技术机密
记录oracle数据库内部信息,是数据库运行的基础,启动时由oracle应用程序动态创建
不允许sysdba之外的用户直接访问
8.2 数据字典表
data dictionary table
用以存储表、索引、约束以及其他数据库结构的信息,通常以$结尾
如:tab$,obj$,ts$,在创建数据库的时候通过运行sql.gsq脚本创建
sql.bsq包含了数据字典表的定义以及注释说明,位于$ORACLE_HOME/dbms/admin目录下,可以多阅读
8.3 动态性能视图
V$开头,在启动时,创建了X$之后,oracle基于x$创建了GV$和V$视图,GV$视图是global v$
基本上每个v$都有一个GV$存在,当然也有例外
GV$是为了满足ops环境,GV$是所有实例信息,而每个v$是基于GV$视图,增加了inst_id列的where条件限制
每个v$都有where inst_id=userenv('Instance');在orc环境下,gv$和V$输出有不同
随后,oracle又创建了gv_$/v_$视图,通过gv$、v$创建了gv_$/v_$视图,然后再创建公用同义词gv$/v$
通过catalog.sql脚本创建
创建gv_$和v_$视图是为了授权,因为授权不能直接在gv$/v$上进行
所以我们看到的gv$/v$都不是真正的gv$/v$
我们常用的v$ 是v_$的同义词,v_$是基于真正的视图v$,而真正的v$视图是在gv$的基础上限制inst_id得到;
我们常用的gv$是gv_$的同义词,gv_$基于真正的视图gv$,而真正的gv$视图基于系统表X$
8.4 数据字典视图
数据字典视图是建立在x$/数据字典表上创建的视图,由catalog.sql负责
根据前缀不同,分为常见的三类:
user_:包含了用户所拥有的相关对象信息
all_:包含了用户有权限访问的所有对象信息
dba_:包含了数据库所有对象的信息
数据字典是元数据(metadata)的存储地点
Oracle使用数据字典记录和管理对象信息和安全信息
包括如下内容:
1. 所有数据库schema对象的定义(表、视图、索引、聚族、同义词、序列、过程、函数、包、触发器等)
2. 数据库的空间分配和使用情况
3. 字段缺省值、完整性约束信息
4. 用户名、角色、权限
5. 审计信息
6. ...
数据字典是数据库的核心,一般情况下是只读的!oracle不建议修改,因为这样可能会导致数据库紊乱而无法恢复!
oracle对这类操作不负责任!
组成:
内部RDBMS(X$表)
数据字典表
动态性能视图(V$)
数据字典视图
8.1 X$是数据库的核心,加密命名,是oracle公司的技术机密
记录oracle数据库内部信息,是数据库运行的基础,启动时由oracle应用程序动态创建
不允许sysdba之外的用户直接访问
8.2 数据字典表
data dictionary table
用以存储表、索引、约束以及其他数据库结构的信息,通常以$结尾
如:tab$,obj$,ts$,在创建数据库的时候通过运行sql.gsq脚本创建
sql.bsq包含了数据字典表的定义以及注释说明,位于$ORACLE_HOME/dbms/admin目录下,可以多阅读
8.3 动态性能视图
V$开头,在启动时,创建了X$之后,oracle基于x$创建了GV$和V$视图,GV$视图是global v$
基本上每个v$都有一个GV$存在,当然也有例外
GV$是为了满足ops环境,GV$是所有实例信息,而每个v$是基于GV$视图,增加了inst_id列的where条件限制
每个v$都有where inst_id=userenv('Instance');在orc环境下,gv$和V$输出有不同
随后,oracle又创建了gv_$/v_$视图,通过gv$、v$创建了gv_$/v_$视图,然后再创建公用同义词gv$/v$
通过catalog.sql脚本创建
创建gv_$和v_$视图是为了授权,因为授权不能直接在gv$/v$上进行
所以我们看到的gv$/v$都不是真正的gv$/v$
我们常用的v$ 是v_$的同义词,v_$是基于真正的视图v$,而真正的v$视图是在gv$的基础上限制inst_id得到;
我们常用的gv$是gv_$的同义词,gv_$基于真正的视图gv$,而真正的gv$视图基于系统表X$
8.4 数据字典视图
数据字典视图是建立在x$/数据字典表上创建的视图,由catalog.sql负责
根据前缀不同,分为常见的三类:
user_:包含了用户所拥有的相关对象信息
all_:包含了用户有权限访问的所有对象信息
dba_:包含了数据库所有对象的信息
相关文章推荐
- 【Oracle笔记】8.Oracle数据字典
- oracle 11g 学习笔记 10_30(2)_数据字典和动态性能视图
- oracle 11g 学习笔记 10_30(2)_数据字典和动态性能视图
- Oracle自学笔记--数据字典
- oracle数据字典(笔记)
- Oracle OCP笔记(09)数据字典视图与动态性能视图
- 笔记之Oracle 数据字典视图:v$fixed_table里包含了三类对象:X$对象、基于X$表的GV$和V$视图
- Oracle数据字典中查看约束信息/约束相关笔记
- oracle 学习笔记(十一) 数据库常用对象, table ,constraint ,index ,view和数据字典
- 教学笔记-Oracle体系结构03-网格架构、数据字典、动态性能监视视图
- oracle数据字典-笔记
- 教学笔记-Oracle常用数据字典
- "ORACLE数据字典视图的种类分别为:USER,ALL 和 DBA.
- oracle 如何导出数据字典
- Oracle数据字典常用查询
- Oracle动态性能视图与数据字典
- Oracle中的数据字典
- Oracle常用数据字典表
- Head First Python 学习笔记-Chapter6:自定义数据对象:字典与类
- 转://工作中 Oracle 常用数据字典集锦