深入浅出数据字典摘要

Eygle深入浅出的数据字典摘要:

Oracle数据字典存储的是oracle内部的元数据,而数据字典一般是只读的,由4部分组成:内部rbdmsx$)表,数据字典表,动态性能(v$)视图和数据字典视图。

X$表是oracle运行基础,在数据库启动时由oracle应用程序创建。不允许授权其他sys用户访问,比较常见x$bh,x$ksmsp,x$kvit等。

SQL> grant select on x$kvit to xiaoyu;

grant select on x$kvit to xiaoyu

ORA-02030: 只能从固定的表/视图查询

不过使用autotraceexplain plan查看sql语句,常用的v视图执行计划的实质却是底层的x视图。

SQL> explain plan for select * from v$parameter;

Explained

SQL> select * from table(dbms_xplan.display());

PLAN_TABLE_OUTPUT

--------------------------------------------------------------------------------

Plan hash value: 1128103955

------------------------------------------------------------------------------

| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |

------------------------------------------------------------------------------

| 0 | SELECT STATEMENT | | 1 | 926 | 1 (100)| 00:00:01 |

|* 1 | HASH JOIN | | 1 | 926 | 1 (100)| 00:00:01 |

|* 2 | FIXED TABLE FULL| X$KSPPI | 1 | 249 | 0 (0)| 00:00:01 |

| 3 | FIXED TABLE FULL| X$KSPPCV | 100 | 67700 | 0 (0)| 00:00:01

提一下x$kvit视图记录的是实例运行的一些信息,例如后台进程dbwr达到以下条件时会触发:

Dirty buffers达到阀值25%

no free buffer当进程扫描LRU一定数量block还找不到free space,触发dbwr执行写出(此时会伴随一个free buffer waits等待事件,是由于需要把datafileblock写入到buffer cache中但是扫描LRU一定数量block后还是找不到free space

数据字典表用以存储表、索引、约束等数据库结构信息,一般以$结尾例如bootstrap$undo$,在创建数据库的时候运行$oracle_home/dbms/sql.bsq脚本创建。

动态性能视图记录的数据库运行信息和统计数据,大部分动态性能视图被实时更新以反映数据库当前状态。

常见的v视图和gv视图,gv视图是用于rac环境下,而v视图是基于gv$视图的,增加了inst_id列的where条件inst_id=userenv(‘instance’)返回当前instance信息。我们可以利用v$fixed_tablev$fixed_view_definition查看v$ gv$x$的有关信息。

Oracle为了安全机制创建了gv_视图、v_视图和publicgv同义词、v同义词,创建的信息存储于oracle_homerbdmsadmincatalog.sql下。

Create or replace view v_$fixed_table as select * from v$fixed_table;

Create or replace public synonym v$fixed_table as select * from v_$fixed_table;

通过v_视图,oraclev$视图和普通用户隔离,普通用户是无法访问v视图的,v_$视图可以授予其他用户,v$视图则不允许。

所以,实际上通常的大部分用户访问的v$对象,并不是视图,而是指向v_$视图的synonym

(访问的优先级table>view>私有synonym>publict synonym

[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25362835/viewspace-1057284/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/25362835/viewspace-1057284/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值