在 11.2.0.4 執行 utlrp.sql 出現 ORA-04031 錯誤解決方法
上次遇到一個案例:
在客戶現場11.2.0.4版本執行utlrp.sql 編譯指令碼時,出現以下錯誤:
ORA-12801: error signaled in parallel query server P237
ORA-12853: insufficient memory for PX buffers: current 84352K, max needed 13280400K
ORA-04031: unable to allocate 65560 bytes of shared memory (“large pool”,”unknown object”,”large pool”,”PX msg pool”)
ORA-06512: at “SYS.UTL_RECOMP”, line 804
ORA-06512: at line 4
原因是:
Cause
The degree of parallelism used for recompilation is determined automatically based on instance parameters cpu_count and parallel_threads_per_cpu.
On systems with high number of cpus that can lead to high degree of parallelism and lead to high memory usage overall and high memory usage in the large pool since it is used by parallel execution for message buffers.
By default utlrp.sql passes a 0 to utlprp.sql:
從上面解釋可以知道依賴於cpu_count的值和parallel_threads_per_cpu的值,如果cpu多,這個並行度就會高,導致large pool會使用更多的記憶體
所以解決這個問題就簡單了
減少例項的並行度值
alter system set PARALLEL_MAX_SERVERS=5 scope=both;
alter system set PARALLEL_SERVERS_TARGET=2 scope=both;
編譯成功。
在客戶現場11.2.0.4版本執行utlrp.sql 編譯指令碼時,出現以下錯誤:
ORA-12801: error signaled in parallel query server P237
ORA-12853: insufficient memory for PX buffers: current 84352K, max needed 13280400K
ORA-04031: unable to allocate 65560 bytes of shared memory (“large pool”,”unknown object”,”large pool”,”PX msg pool”)
ORA-06512: at “SYS.UTL_RECOMP”, line 804
ORA-06512: at line 4
原因是:
Cause
The degree of parallelism used for recompilation is determined automatically based on instance parameters cpu_count and parallel_threads_per_cpu.
On systems with high number of cpus that can lead to high degree of parallelism and lead to high memory usage overall and high memory usage in the large pool since it is used by parallel execution for message buffers.
By default utlrp.sql passes a 0 to utlprp.sql:
從上面解釋可以知道依賴於cpu_count的值和parallel_threads_per_cpu的值,如果cpu多,這個並行度就會高,導致large pool會使用更多的記憶體
所以解決這個問題就簡單了
減少例項的並行度值
alter system set PARALLEL_MAX_SERVERS=5 scope=both;
alter system set PARALLEL_SERVERS_TARGET=2 scope=both;
編譯成功。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7199859/viewspace-1840822/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- nginx出現403錯誤的解決方法Nginx
- 如何解決ORA-04031 錯誤(轉)
- Python: 安裝 sklearn 包出現錯誤的解決方法Python
- steam確認錯誤執行此操作時出現問題怎麼解決
- mysql執行函式出現1418錯誤MySql函式
- 執行Tensorboard出現kernel is dead的解決方法ORB
- 行動硬碟引數錯誤怎麼解決?行動硬碟開啟出現引數錯誤的修復方法硬碟
- 伺服器出現 HTTP 錯誤程式碼,及解決方法伺服器HTTP
- Excel宏執行時提示錯誤1004的三個解決方法Excel
- idea執行java專案main方法報build failure錯誤的解決方法IdeaJavaAIUI
- Win10系統瀏覽器提示“出現了執行時間錯誤”的解決方法步驟!Win10瀏覽器
- 轉存——Quartus II FPGA程式模擬執行時出現錯誤“error occurred during modelsim simulation”的解決方法FPGAError
- win10執行jade提示399錯誤怎麼辦_win10執行jade提示399錯誤的解決方法Win10
- 安裝vCenter Server出現1603錯誤的一種解決方法Server
- git push出現unpack failed: error Missing tree錯誤的解決方法GitAIError
- Win7 IIS7.5執行ASP時出現500錯誤的解決辦法Win7
- 【故障處理】如何避免在執行impdp後出現ORA-00001錯誤
- win10 mstsc出現內部錯誤怎麼修復_win10 mstsc出現內部錯誤解決方法Win10
- IIS 7.5 解析錯誤 命令執行漏洞解決方案
- Mysql出現連線錯誤解決辦法MySql
- windows10系統升級助手出現錯誤的解決方法Windows
- PbootCMS 404 錯誤解決方法boot
- dbfread報錯ValueError錯誤解決方法Error
- win7系統執行程式出現APPCRASH錯誤怎麼解決Win7行程APP
- 解決java5 發行錯誤最好的方法Java
- 真機除錯出現 application installation failed 錯誤 解決方案除錯APPAI
- 解決Arch Linux安裝AndroidStudio連結不上Android,執行adb devices出現no permissions的錯誤LinuxAndroiddev
- win10系統執行cad2016後出現錯誤c000005怎麼解決Win10
- win10系統Rstudio無法啟動或執行出現錯誤的解決步驟Win10
- 檢視執行計劃出現ORA-22992錯誤
- win10系統執行英雄聯盟錯誤game error directx解決方法Win10GAMError
- Laravel 執行 Gulp 命令出錯解決辦法Laravel
- 使用代理爬蟲出302錯誤程式碼解決方法爬蟲
- undefined reference to錯誤的解決方法Undefined
- dedecms提示500錯誤解決方法
- HTTP 錯誤 500.19- Internal Server Error 錯誤解決方法HTTPServerError
- win10執行lol出現woops something broke的解決方法Win10OOP
- win10出現藍屏錯誤程式碼clock_watchdog_timeout解決方法Win10
- 帝國模板登入出現已被登入或者密碼錯誤解決方法密碼