oracle 儲存過程不能編譯-- (編譯的同時正在訪問所導致的) [轉載]
oracle 儲存過程不能編譯-- (編譯的同時正在訪問所導致的) [轉載]
1.SELECT * FROM V$DB_OBJECT_CACHE WHERE name='NCCM_MEDICAL_USERSTATS2' AND LOCKS!='0';
2.select SID from V$ACCESS WHERE bject='NCCM_MEDICAL_USERSTATS2';
3.SELECT SID,SERIAL#,PADDR FROM V$SESSION WHERE SID='135';
4.alter system kill session '135,50430' immediate;
在對儲存過程進行訪問、執行、測試的時候,沒有完全停止,就又在另外一個視窗,對它進行修改而且進行編譯,出現了卡死現象。用PLSQL Developer 在session裡,找到這條session的記錄,然後kill後,再重新編譯這個過程,還是卡死,可是在session裡這條記錄已經是顯示killed狀態,那就通過下面的方法進行解決:
1:查V$DB_OBJECT_CACHE
SELECT * FROM V$DB_OBJECT_CACHE WHERE name='P_DATA_SYNC_CHECK' AND LOCKS!='0';
注意:P_DATA_SYNC_CHECK為儲存過程的名稱。
發現locks=2,
2:按物件查出sid的值
select SID from V$ACCESS WHERE bject='P_DATA_SYNC_CHECK';
注意:P_DATA_SYNC_CHECK為儲存過程的名稱。
3:查sid,serial#
SELECT SID,SERIAL#,PADDR FROM V$SESSION WHERE SID='剛才查到的SID';
4:alter system kill session 'sid值,serial#值' immediate;
本人轉載:http://www.cnblogs.com/kaka-bing/archive/2012/06/28/2568501.html
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26442936/viewspace-754966/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 儲存過程編譯時卡死儲存過程編譯
- 儲存過程編譯時會卡死儲存過程編譯
- oracle 儲存過程重新編譯方法Oracle儲存過程編譯
- Oracle儲存過程編譯卡死的解決方法Oracle儲存過程編譯
- 編譯儲存過程時被卡死的處理方法編譯儲存過程
- Oracle 編譯儲存過程卡死解決方法Oracle編譯儲存過程
- SQL SERVER 臨時表導致儲存過程重編譯(recompile)的一些探討SQLServer儲存過程編譯Compile
- oracle儲存過程編譯死掉的原因及解決(zt)Oracle儲存過程編譯
- 一個儲存過程編譯HANG住的分析儲存過程編譯
- 建立儲存過程編譯無效物件儲存過程編譯物件
- 編譯器的編譯基本過程編譯
- 儲存過程被鎖無法編譯的解決儲存過程編譯
- 編譯過程導致ORA-4068錯誤編譯
- 編譯過程編譯
- glade 編譯過程 (轉)編譯
- 自動編號的儲存過程 (轉)儲存過程
- 編譯器的工作過程編譯
- EVC編譯TCPMP的過程編譯TCP
- 【爬坑】.Net編譯環境導致的問題編譯
- oracle自動生成編譯所有函式、儲存過程、觸發器的語句Oracle編譯函式儲存過程觸發器
- Bitcode導致的編譯報錯編譯
- Javac編譯過程Java編譯
- 編譯核心過程編譯
- 儲存過程裡呼叫編譯自己是什麼情況?儲存過程編譯
- Oracle認證 :Oracle中重新編譯無效的儲存過程,或函式、觸發器Oracle編譯儲存過程函式觸發器
- JavaScript的預編譯過程分析JavaScript編譯
- 編譯C++ 程式的過程編譯C++
- GCC編譯過程(預處理->編譯->彙編->連結)GC編譯
- [轉]:xmake編譯配置過程詳解編譯
- 編譯連結過程編譯
- 編譯過程簡介編譯
- C++ 編譯過程C++編譯
- PHP 編譯引數儲存PHP編譯
- Myeclipse不能編譯問題Eclipse編譯
- 檢視已經編譯過的NGINX當時的編譯引數編譯Nginx
- 從sybase的儲存過程轉向oracle的儲存過程儲存過程Oracle
- vlc-android 的編譯過程Android編譯
- 編譯器的工作過程和原理編譯