sql執行期間相關的等待
1、使用者請求的SQL,ORACLE進行語法許可權的檢查後獲得hash BUCKET上的library cache鎖存器,找到是否有相同SQL資訊(相同LCO),
如果發生爭用等待LATCH:LIBRARY CAHE,存在則進行第8步,每次SQL PARSING PASESE COUNT(TOTAL)+1這是軟硬解析之和
2、不存在獲得SHARED POOL鎖存器後,尋找空閒列上空閒的CHUNK(及FREE狀態的CHUNK),ORACLE會一直擁有SHARD POOL latch知道找到CHUNK為止,發生爭用出現
shared pool等待事件。
3、如果不存在空閒CHUNK,尋找更大空閒CHUNK分割後使用,剩下的記憶體登記到空閒列
4、如果還是沒摘到,檢索LRU列,找到可以recreate 的CHUNK(及RECREATE狀態的CHUNK)
5、如果還是找不到合適的CHUNK,則增加分配共享記憶體池的剩餘空間(10g可以動態ASSM管理記憶體)
6、如果都是報錯ORA-4031錯誤
7、如果找到CHUNK,SQL相應的HANDLE(LIBRARY CACHE HANDLE)以獨佔模式獲得LIBRARY CACHE LOCK,並且建立LCO資訊,完成後
LIBRARY CACHE LOCK 為NULL模式,然後LIBRARY CACHE PIN以獨佔模式獲得LCO資訊,建立執行計劃,2-7為硬解析,parse count(hard)增加。
8、以SHARD 模式獲得LIBRARY CAHE LOCK和LIBRARY CAHCE PIN,執行SQL,次為執行階段。注意DDL語句會對想用LCO以獨佔模式獲得LIBRARY CACHE LOCK
和LIBRARY CAHCE PIN,如果出現等待則需要等待LIBRARY CACHE LOCK/PIN
9、ORACLE執行結束後進入FETCH階段,此時就釋放lIBRARY cache LOCK/PIN。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7728585/viewspace-764255/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SQL Server郵件相關SQL語句出現嚴重的ASYNC_NETWORK_IO等待事件案例SQLServer事件
- sql相關SQL
- 執行期間丟擲NoSuchMethodError模擬及原因分析Error
- 渡過難關:病毒流行期間的品牌管理報告
- 時間相關的操作
- java mvc 新趨勢——從執行期間類掃描到編譯期間JavaMVC編譯
- Oracle DB 相關常用sql彙總7【手工繫結sql執行計劃】OracleSQL
- 時間相關的工具類
- 執行緒間通訊_等待/通知機制執行緒
- sql_trace相關指令碼SQL指令碼
- Java 執行緒間通訊 —— 等待 / 通知機制Java執行緒
- 155 執行緒的相關操作執行緒
- Java 編譯期和執行期Java編譯
- Android小知識-Java多執行緒相關(執行緒間通訊)上篇AndroidJava執行緒
- MyBatis列印SQL執行時間MyBatisSQL
- 執行緒池相關執行緒
- 暫緩實施尾號限行期間交通執行狀況評價
- 執行緒間通訊_等待/通知之Thread.join()執行緒thread
- sql-server相關子查詢SQLServer
- SCM通道模型和SCME通道模型的matlab特性模擬,對比空間相關性,時間相關性,頻率相關性模型Matlab
- 世界經濟展望:大流行期間的恢復
- 18 與Oracle Data Guard 相關的SQL語句OracleSQL
- python 時間相關模組Python
- oracle查詢sql執行耗時、執行時間、sql_idOracleSQL
- IDEA 如何讓程式執行期間 不在 RUN 視窗的輸出,而是輸出到log 檔案Idea
- 多執行緒相關整理執行緒
- Linux執行python相關指令LinuxPython
- 【SCRIPT】Oracle統計資訊相關SQLOracleSQL
- 經過一個多月的等待我有幸成為Spring相關專案的ContributorSpring
- 對話式AI:大流行期間的前沿技術AI
- SQL Server中的SELECT會阻塞SELECT相關資料SQLServer
- 時間函式:與時間相關那些事。。。函式
- oracle臨時表空間相關Oracle
- 流程執行期儲存流程變數的表有哪些變數
- 多執行緒的執行緒狀態及相關操作執行緒
- 多執行緒相關問題執行緒
- 執行緒池相關複習執行緒
- 什麼是SQL 語句中相關子查詢與非相關子查詢SQL
- 【雜談】JS相關的執行緒模型整理JS執行緒模型