设为首页 收藏本站
查看: 787|回复: 0

[经验分享] Oracle的逻辑结构(表空间、段、区间、块)——总结

[复制链接]
YunVN网友  发表于 2016-8-14 06:43:30 |阅读模式
  原创于2009年02月22日,2009年10月22日迁移至此。
  

  Oracle逻辑结构全景结构图
DSC0000.jpg


以下为个人整理的一些关于Oracle逻辑结构的相关数据字典:
SELECT * FROMDBA_TABLESPACES--记录各个表空间的详细信息
SELECT * FROMDBA_TABLESPACE_USAGE_METRICS--记录各个表空间的使用状况
SELECT * FROMDBA_DATA_FILES --记录各个数据文件的详细信息
SELECT * FROMDBA_SEGMENTS --记录各个段的详细信息,与DBA_TABLES,DBA_INDEXES,DBA_LOBS,DBA_PART_TABLES,DBA_PART_INDEXES,
DBA_PART_LOBS,DBA_OBJECTS搭配使用
SELECT * FROMDBA_LOBS--BLOB字段所对应的字段名称
SELECT * FROMDBA_INDEXES--分区索引需要通过DBA_INDEXS来找到对应的表名
SELECT * FROMDBA_EXTENTS--记录各个区间对象的详细信息
关于块对象可以通过表记录中的ROWID来获取,大概涉及到这一层就太细致了,所以Oracle也不采用数据字典的方式来进行控制了。这一点在Concept中有细致的描述,基于本地管理表空间的管理方式也是基于区间头部的位图方式管理相应的块的。

实际上这些DBA_对象也不过是数据库中的一个个视图而已,由更加底层的视图或表组合起来的,如果有兴趣的话,可以自行钻研下去

SELECT * FROMV$TABLESPACE--记录表空间的基本信息,对象ID,表空间名称
SELECT * FROMV$DATAFILE--记录数据文件的基本信息,对象ID,表空间ID,文件名称以及状态、大小和相应的变化
SELECT * FROMV$SEGSTAT--实时监控数据库段级对象的统计信息
SELECT * FROMV$SEGSTAT_NAME --段级对象的统计项目
SELECT * FROMV$SEGMENT_STATISTICS --实时监控段级对象的性能,说穿了和V$SEGSTAT有点像,统计信息更丰富一些
这些V$视图提供的信息比不上DBA_视图丰富,而且本身这些视图是基于同义词的。

The next example demonstrates how to use V$SEGMENT_STATISTICS todetermine the top 10 tables that have incurred the most physical I/Ooperations.ITPUB个人空间J9@A4k;@.Ztb

SELECTTABLE_NAME,TOTAL_PHYS_IO
FROM ( SELECTOWNER||'.'||OBJECT_NAME AS TABLE_NAME,
SUM(VALUE) AS TOTAL_PHYS_IO
FROMV$SEGMENT_STATISTICS
WHEREOWNER!='SYS' AND OBJECT_TYPE='TABLE'
ANDSTATISTIC_NAME IN ('physical reads','physical reads direct',
'physical writes','physicalwrites direct')
GROUP BY OWNER||'.'||OBJECT_NAME
ORDER BY TOTAL_PHYS_IO DESC)
WHERE ROWNUM <=10;


Using the V$SEGMENT_STATISTICS DynamicPerformance View
http://hi.baidu.com/oracle_10g/blog/item/d26776f4a253cbdbf2d38591.html

学习动态性能表(17)--v$segstat&v$segment_statistics
http://junsansi.itpub.net/post/29894/295160

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-257314-1-1.html 上篇帖子: oracle序列生成器(sequence)使用的一点小注意 下篇帖子: oracle 某列 触发后修改其他列,
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表