导航菜单

优化体系--快速查询热点块和热点块的操作记录

很多时候我们想知道哪个Oracle数据库是热块对象,哪个sql是一个比较频繁的操作,我们怎样才能查询?

SELECT *

FROM(SELECT O.OWNER,O.OBJECT_NAME,O.OBJECT_TYPE,SUM(TCH)TOUCHTIME

从X $ BH B,DBA_OBJECTS O

WHERE B.OBJ=O.DATA_OBJECT_ID

AND B.TS#> 0

GROUP BY O.OWNER,O.OBJECT_NAME,O.OBJECT_TYPE

按顺序(TCH)DESC)

在哪里ROWNUM<=10;

93534b25c5cf4cc7afb5c0238c4d9ff0

SELECT/* + rule */

HASH_VALUE,SQL_ID,SQL_TEXT

来自V $ SQLTEXT

(SELECT A.HASH_VALUE,A.ADDRESS

FROM V $ SQLTEXT A,

(SELECT DISTINCT A.OWNER,A.SEGMENT_NAME,A.SEGMENT_TYPE

来自DBA_EXTENTS A,

(SELECT DBARFIL,DBABLK

FROM(SELECT DBARFIL,DBABLK

来自X $ BH

按TCH DESC命令)

在哪里ROWNUM< 11)B

在哪里A.RELATIVE_FNO=B.DBARFIL

AND A.BLOCK_ID<=B.DBABLK

AND A.BLOCK_ID + A.BLOCKS> B.DBABLK)B

在哪里A.SQL_TEXT喜欢'%'|| B.SEGMENT_NAME || '%'

AND B.SEGMENT_TYPE='TABLE')

ORDER BY HASH_VALUE,ADDRESS,PIECE;

edc92109927444ffb575f309cfa40edb

在组中选择listagg(sql_text,'')(逐个)

来自v $ sqltext

其中sql_id='1akucfw1ccd22'

按sql_id分组

24ec3961dcda4999b5b7bf86580a4fb4

稍后,我将分享更多关于devops和DBA的信息。有兴趣的朋友可以关注它

f3ea6a727d5f47f69f54de656931e8d6