您好,登錄后才能下訂單哦!
該事件發生在將相同數據塊載入到內存的過程中,多個會話同時select相同的數據塊引起buffer lock爭用。在 oracle 9i中相當于"buffer busy waits" ,在Oracle 10.1及更高版本中,該事件被被分解為“read by other session”等待事件。
select c.PARAMETER1,c.PARAMETER2,c.PARAMETER3 from v$event_name c where c.name='read by other session';
PARAMETER1 PARAMETER2 PARAMETER3
----------- ----------- ----------
file# block# class#
參數:
P1 = file# Absolute File# (AFN)
P2 = block#
P3 = class# Block class
file# 絕對文件編號(AFN)包含等待會話所需塊的數據文件的文件號。
block#等待會話要訪問的上述文件的塊號。
class#等待的塊類:
class 1表示“數據塊”,可以是表或索引
class 4類表示“段頭”
class >=15表示“撤消塊”
查找blocker:
SELECT SID mySID, blocking_session,
p1 "FILE#", p2 "BLOCK#", p3 "class#", row_wait_obj# OBJECT_ID
FROM v$session
WHERE event = 'read by other session'
AND STATE='WAITING'
;
查找對象:
SELECT relative_fno, owner, segment_name, segment_type
FROM dba_extents
WHERE file_id = &FILE
AND &BLOCK BETWEEN block_id AND block_id + blocks - 1
;
減少該等待事件:
1.優化sql,減少數據塊讀入
2.增加sga大小
mos:WAITEVENT: "read by other session" Reference Note (文檔 ID 732891.1)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。