16.未公开的Oracle数据库秘密笔记——X$BH表与闩锁争用

来源:互联网 发布:点云数据 编辑:程序博客网 时间:2024/05/18 05:49

16.未公开的Oracle数据库秘密笔记——X$BH表与闩锁争用

欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/50383227

官方文档Performance Tuning Guide对X$固定表X$BH做出了部分说明。X$表并不是优化性能的捷径。

         闩锁是ORACLE数据库管理系统用来保护内存结构的一种低层次锁机制。

查看标识了丢失计数最高的子闩锁:

SQL>select name,addr,latch#,child#,misses,sleepsfrom v$latch_children where misses > 10000 order by misses;

通过连接X$BH和DBA_OBJECTS,可以找出子闩锁保护的数据块属于哪些数据库对象

SELECT bh.file#, bh.dbablk, bh.class,decode(bh.state,0,'free',1,'xcur',2,'scur',3,'cr',4,'read',5,'mrec',6,'irec',7,'write',8,'pi',9,'memory',10,'mwrite',11,'donated') AS status, decode(bitand(bh.flag,1), 0, 'N','Y') AS dirty, bh.tch,

       o.owner, o.object_name, o.object_type

FROM x$bh bh, dba_objects o

WHERE bh.obj=o.data_object_id

AND bh.hladdr='&child_latch_address'

ORDER BY tch DESC;

找到对象,然后进行分析。

 

 

 

 

 

 

 

0 0