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/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 刪除表時碰到lms flush message acks等待事件事件
- 【等待事件】SQL*Net message from dblink事件SQL
- buffer busy wait 等待事件說明(轉)AI事件
- 【WAIT】 log file sync等待事件說明AI事件
- Oracle資料泵匯出匯入(expdp/impdp)Oracle
- oracle等待事件之cursor:pin S wait on XOracle事件AI
- Oracle使用資料泵expdp,impdp進行資料匯出匯入Oracle
- 常見的wait等待事件及處理(zt)AI事件
- Oracle 12c expdp和impdp匯出匯入表Oracle
- oracle資料庫的impdp,expdpOracle資料庫
- [20200620]expdp impdp exclude引數.txt
- expdp/impdp變慢 (Doc ID 2469587.1)
- 【Data Pump】expdp/impdp Job基本管理
- 重學 JavaScript API - Broadcast Channel APIJavaScriptAPIAST
- expdp/impdp 詳細引數解釋
- 等待事件wait for a undo record 與 fast_start_parallel_rollback引數事件AIASTParallel
- Oracle10g等待事件型別wait_class說明Oracle事件型別AI
- oracle10g expdp資料泵的bug,按schema匯出,匯入impdp時無jobOracle
- impdp和expdp用法及引數介紹
- ORACLE EXPDP IMPDP 的停止和啟動及監控Oracle
- EXP、IMP、SQLLOADER、EXPDP、IMPDP、DBMS_METADATA、SQLPLUS等方面SQL
- expdp 匯出時指定節點
- Solidity事件,等待事件Solid事件
- Linux下執行資料泵expdp和impdp命令,字元轉義案例兩則Linux字元
- expdp在匯出時對資料大小進行評估
- 使用資料泵(expdp、impdp)遷移資料庫流程資料庫
- 在 Golang 中使用 Go 關鍵字和 Channel 實現並行Golang並行
- 【TUNE_ORACLE】等待事件之等待事件類別Oracle事件
- 資料泵datapump(expdp/impdp)的parfile用法,避免跳脫字元字元
- 使用impdp,expdp資料泵進入海量資料遷移
- [Java併發]執行緒的並行等待Java執行緒並行
- Java多執行緒學習(四)等待/通知(wait/notify)機制Java執行緒AI
- [20240827]分析為什麼出現library cache lock等待事件2.txt事件
- [20240828]分析為什麼出現library cache lock等待事件5.txt事件
- Mysql DDL出現長時間等待MDL問題分析MySql
- 【3分鐘速覽】前端廣播式通訊:Broadcast Channel前端AST
- Selenium等待事件Waits事件AI
- Labview 安裝 NI 軟體時出現 ni-systemlink-message-broker 錯誤View
- oracle dblink用法總結和expdp和impdp利用dblink倒入匯出到本地Oracle