impdp/expdp 並行時出現wait for unread message on broadcast channel等待事件
昨晚有個朋友說加班在IMPDP資料, 在匯入中途突然沒有了進展,掛在那裡不動了,impdp 視窗也沒有報錯, 一直等了1個多小時,說是impdp使用了parallel,懷疑是parallel引數出了問題, 最終其實原因很簡單。這裡只是簡單的描述遇到這類問題時的處理思路。
set lines 150 pages 100 numwidth 7
col program for a38
col username for a10
col spid for a7
select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') "DATE", s.program, s.sid,
s.status, s.username, d.job_name, p.spid, s.serial#, p.pid
from v$session s, v$process p, dba_datapump_sessions d
where p.addr=s.paddr and s.saddr=d.saddr;
檢查v$px_process是否並行,
檢查dba_datapump_jobs 確認job是否executing 狀態,
檢查v$session_longops 看到進度,另外從 v$transaction 檢視 USED_UBLK , used_urec impdp程式狀態
1, 先確認是hang 還是 slow ;
2, 檢查當前sesion的wait event ;
3, 檢查Alert log;
開始說是使用了impdp parallel ,
檢查v$px_process無記錄確認當前無並行,
檢查dba_datapump_jobs 確認了job依然是executing 狀態,
檢查v$session_longops 看到進度無進展,這個從 v$transaction 檢視 USED_UBLK , used_urec 欄位也可以確認impdp程式是hang沒有必要再死等
檢查v$session BLOCKING_SESSION,event,SECONDS_IN_WAIT,state,LAST_CALL_ET ,從event 可以確認是在等待 “wait for unread message on broadcast channel”
這是一個idle wait,在等待message請求,通常這個問題是因為空間問題,但是不會在datapump程式丟擲異常,alert.log中才有相關錯誤原因
隨後再alert log 中找到了錯誤原因是提示存放歸檔的閃回區使用滿了, 有時會是匯入的Tablespace無可用空間, 接下來的處理方法就很簡單了。
set lines 150 pages 100 numwidth 7
col program for a38
col username for a10
col spid for a7
select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') "DATE", s.program, s.sid,
s.status, s.username, d.job_name, p.spid, s.serial#, p.pid
from v$session s, v$process p, dba_datapump_sessions d
where p.addr=s.paddr and s.saddr=d.saddr;
另外也可以使用trace 、10046 event 診斷請參考MOS 286496.1
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25462274/viewspace-1958805/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 等待事件:wait for unread message on broadcast channel事件AIAST
- Oracle 11g IMPDP卡死出現wait for unread message on broadcast channel等待事件處理OracleAIAST事件
- EXPDP/IMPDP 中的並行度PARALLEL引數並行Parallel
- 【EXPDP/IMPDP】使用 EXPDP/IMPDP工具“模糊”匯出和匯入
- ARCH wait on SENDREQ 等待事件AI事件
- virtual circuit wait等待事件UIAI事件
- oracle wait event 等待事件OracleAI事件
- 等待事件ARCH wait on ATTACH事件AI
- 【Oracle】並行等待之PX Idle WaitOracle並行AI
- 刪除表時碰到lms flush message acks等待事件事件
- 啟動資料庫後,等待事件出現大量wait for undo record資料庫事件AI
- 等待事件 (wait event) [final]事件AI
- oracle virtual circuit wait 等待事件OracleUIAI事件
- 【故障】cursor: pin S wait on X等待事件大量出現AI事件
- IMP匯入時遭遇oracle等待事件single-task messageOracle事件
- buffer busy wait 等待事件說明AI事件
- cursor: pin S wait on X等待事件。AI事件
- log buffer space wait event等待事件AI事件
- 【等待事件】SQL*Net message from dblink事件SQL
- expdp/impdp來解決exp/imp出現的錯誤並匯入指定表空間
- oracle匯入匯出之expdp/impdpOracle
- expdp impdp只匯出匯入viewView
- impdp/expdp 示例
- oracle expdp and impdpOracle
- buffer busy wait 等待事件說明(轉)AI事件
- 【WAIT】 log file sync等待事件說明AI事件
- ORACLE等待事件型別【Classes of Wait Events】Oracle事件型別AI
- exp/imp出現錯誤通過expdp/impdp來解決
- expdp與impdp全庫匯出匯入
- Expdp Impdp詳解
- oracle expdp/impdp用法Oracle
- oracle等待事件之cursor:pin S wait on XOracle事件AI
- 常見的wait等待事件及處理AI事件
- cursor: pin S wait on X等待事件模擬AI事件
- Oracle資料泵匯出匯入(expdp/impdp)Oracle
- expdp與impdp全庫匯出匯入(二)
- 重學 JavaScript API - Broadcast Channel APIJavaScriptAPIAST
- Oracle使用資料泵expdp,impdp進行資料匯出匯入Oracle