使用DBLink出現ora-03113處理過程
今天碰到一個資料oracle9i,dblink到另一個資料庫,dblink單表查詢時候沒有問題SELECT * FROM XX.RES_EQUIP_HIS@AAA,但是執行聯合查詢時候
SELECT * FROM XX.RES_EQUIP_HIS@AAA A,
XX.CM_USER_EQPT B
WHERE A.SALE_DATE BETWEEN
to_date(to_number(to_char(sysdate, 'yyyymmdd')) - 1 || '000000','yyyymmddhh24miss') AND
to_date(to_number(to_char(sysdate, 'yyyymmdd')) - 1 || '235959','yyyymmddhh24miss')AND
A.PHONE_SEQUENCE = B.EQPT_SN;
返回錯誤:ORA-03113: 通訊通道的檔案結束。
當我遇到這個問題,感覺像網路問題,我首先檢視了2表的描述和2張表上的索引,A.PHONE_SEQUENCE和B.EQPT_SN都有索引,A.SALE_DATE也有索引。
有時dblink查詢的時候報ORA-03113,不能檢視執行計劃,我做了2個測試。
一、單獨執行:
SELECT * FROM XX.RES_EQUIP_HIS@AAA A
WHERE A.SALE_DATE BETWEEN
to_date(to_number(to_char(sysdate, 'yyyymmdd')) - 1 || '000000','yyyymmddhh24miss') AND
to_date(to_number(to_char(sysdate, 'yyyymmdd')) - 1 || '235959','yyyymmddhh24miss');
可以執行成功。
二、單獨執行:
SELECT * FROM XX.RES_EQUIP_HIS@AAA A,
XX.CM_USER_EQPT B
WHERE A.PHONE_SEQUENCE = B.EQPT_SN;
可以執行成功
我判斷應該是to_date(to_number(to_char(sysdate, 'yyyymmdd')) - 1 || '000000','yyyymmddhh24miss')沒有走索引導致。
我又測試了下面sql:
SELECT count(*) FROM XX.RES_EQUIP_HIS@AAA A,
XX.CM_USER_EQPT B
WHERE A.PHONE_SEQUENCE = B.EQPT_SN
and A.SALE_DATE >= to_date('20120815000000','yyyymmddhh24miss')
AND A.SALE_DATE < to_date('20120815235959','yyyymmddhh24miss');
執行成功。
所以判斷,問題出在由於之前A.SALE_DATE沒有做索引,查詢的資料量太大了,有可能導致網路諸塞,引起 03113
總結:出現ora-03113解決方法:
1、減少查詢資料的量或者正確使用索引
2、升級資料庫版本
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12272958/viewspace-741186/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle 8.1.7.4建立dblink出現ora-03113錯誤Oracle
- 異常處理過程
- DML 語句處理過程
- Nucleus中斷處理過程!!!!
- oracle處理SQL的過程OracleSQL
- ovftool匯出虛擬機器報錯處理過程!虛擬機
- Oracle釋出一個SQL語句的處理過程OracleSQL
- 【故障處理】一次RAC故障處理過程
- Java使用javacv處理影片檔案過程記錄Java
- 【原始碼】Redis命令處理過程原始碼Redis
- 某次BW 異常處理過程
- ora-14452處理過程
- HSG80故障處理過程
- ora-04031處理過程
- SQL語句的處理過程SQL
- 分散裝運處理的過程
- GIT使用過程出現(master|REBASE 1/10)GitAST
- Solaris10整合apache與php過程及出錯處理ApachePHP
- PHP5.2.4安裝中出現問題及處理過程PHP
- python中PCA的處理過程PythonPCA
- Ceph pg unfound處理過程詳解
- DOM在Ahooks中的處理過程Hook
- ORACLE 查詢語句處理過程(Oracle
- MYSQL匯入中斷處理過程MySql
- SQL語句的處理過程修正SQL
- OnWndMsg函式的處理過程函式
- WCDMA測試庫故障處理過程
- 刪除私有dblink的儲存過程儲存過程
- Oracle->Mysql dblink 建立詳細過程OracleMySql
- drop user 報ORA-03113 問題處理
- STS(SQL Tuning Set)匯入匯出過程及錯誤處理SQL
- docker使用redis過程出現的問題記錄DockerRedis
- 大資料處理過程是怎樣大資料
- ovm安裝過程及中斷處理
- 資料庫變慢的處理過程資料庫
- oracle taf unknown 問題處理過程Oracle
- ES系列(五):獲取單條資料get處理過程實現
- npm install 使用過程出現的問題總結NPM