同一個sql在不同的oracle中執行時間不一樣


最近因為某些原因不得不重新配置服務器的環境,當然就是一些簡單的程序運行環境,包括tomcat 、oracle和其他的一些。原本覺得還蠻簡單的東西,但是當我部署完成后在運行程序的過程中發現了一些隱性因數。特別讓我郁悶的就是同一個sql,同樣的數據量在兩個不同的數據庫中執行時間那是一個天壤之別,當時跟網上查詢了一下,得到一下結論:

發生的原因:

1.內存

2.數據庫的優化方式和優化級別

3.I/O吞吐量

4.操作系統參數(緩沖池、進程內存)

5.索引的創建和使用

解決方法:

1.調整數據庫內存:

sqlplus /nolog;

connect / as sysdba;

show parameter sga; (查看內存占用情況)
  alter system set sga_max_size=2048m scope=spfile;
注意:sga_max_size不能大於memory_target,不然數據庫啟動失敗。
2.對比數據庫之間的索引,判斷是否正常引用索引
3調整數據優酷的優化方式和優化級別
4、更改系統設置,增大I/O吞吐量
5、查看操作系統參數
 
這些是目前所能想到了,如果以后還想到了其他的原型在進行修改


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM