oracle 效能優化
18. 用表連線替換EXISTS
當提交一個包含對多表資訊(比如部門表和僱員表)的查詢時,避免在SELECT子句中使用DISTINCT。 一般可以考慮用EXIST替換。
EXISTS 使查詢更為迅速,因為RDBMS核心模組將在子查詢的條件一旦滿足後,立刻返回結果。
下面的SQL工具可以找出低效SQL,前提是需要DBA許可權,否則查詢不了。
另外也可以使用SQL Trace工具來收集正在執行的SQL的效能狀態資料,包括解析次數,執行次數,CPU使用時間等 。
EXPLAIN PLAN 是一個很好的分析SQL語句的工具, 它甚至可以在不執行SQL的情況下分析語句. 通過分析, 我們就可以知道ORACLE是怎麼樣連線表, 使用什麼方式掃描表(索引掃描或全表掃描)以及使用到的索引名稱。
22. SQL PLUS的TRACE
23. 用索引提高效率
2)Oracle對索引有兩種訪問模式
-
索引唯一掃描 (Index Unique Scan)
-
索引範圍掃描 (Index Range Scan)
(3)基礎表的選擇
-
基礎表(Driving Table)是指被最先訪問的表(通常以全表掃描的方式被訪問)。 根據優化器的不同,SQL語句中基礎表的選擇是不一樣的。
-
如果你使用的是CBO (COST BASED OPTIMIZER),優化器會檢查SQL語句中的每個表的物理大小,索引的狀態,然後選用花費最低的執行路徑。
- 如果你用RBO (RULE BASED OPTIMIZER), 並且所有的連線條件都有索引對應,在這種情況下,基礎表就是FROM 子句中列在最後的那個表。
推薦閱讀:
https://developer.aliyun.com/article/868583
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69949806/viewspace-2903980/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle效能優化-SQL優化(案例一)Oracle優化SQL
- Oracle效能優化-SQL優化(案例二)Oracle優化SQL
- Oracle效能優化-SQL優化(案例三)Oracle優化SQL
- Oracle效能優化-SQL優化(案例四)Oracle優化SQL
- Oracle 效能優化-expdp備份速度優化02Oracle優化
- Oracle 效能優化-expdp備份速度優化03Oracle優化
- Oracle案例10——HWM(高水位線)效能優化Oracle優化
- Oracle效能優化使用度量和預警Oracle優化
- Oracle SQL效能優化的40條軍規OracleSQL優化
- 【前端效能優化】vue效能優化前端優化Vue
- Oracle效能優化方法論的發展之二:基於OWI的效能優化方法論Oracle優化
- 使用資源管理器優化Oracle效能AQ優化Oracle
- oracle優化Oracle優化
- Oracle效能優化-資料庫CPU使用率100%Oracle優化資料庫
- 效能優化優化
- Oracle效能優化方法論的發展之三:基於響應時間分析的效能優化方法論Oracle優化
- oracle 效能最佳化Oracle
- 前端效能優化(JS/CSS優化,SEO優化)前端優化JSCSS
- oracle優化技巧Oracle優化
- oracle EM 優化Oracle優化
- Android效能優化——效能優化的難題總結Android優化
- [效能優化]DateFormatter深度優化探索優化ORM
- 前端效能優化 --- 圖片優化前端優化
- 效能優化|Tomcat 服務優化優化Tomcat
- Android 效能優化 ---- 啟動優化Android優化
- Android效能優化----卡頓優化Android優化
- Oracle 效能調優工具:SQL MonitorOracleSQL
- Oracle效能優化方法論的發展之一:基於區域性命中率分析的效能優化方法Oracle優化
- Javascript 效能優化JavaScript優化
- java效能優化Java優化
- react效能優化React優化
- Canvas效能優化Canvas優化
- UI效能優化UI優化
- mongodb效能優化MongoDB優化
- Android效能優化Android優化
- EF效能優化優化
- TableView效能優化View優化
- web效能優化Web優化