自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

大致分析Oracle SQL語句

數(shù)據(jù)庫 Oracle
這里介紹Oracle SQL語句,SQL語言是一種靈活的語言,相同的功能可以使用不同的語句來實現(xiàn)。但是語句的執(zhí)行效率是很不相同的,程序員可以使用EXPLAIN PLAN語句來比較各種實現(xiàn)方案,并選出最優(yōu)的實現(xiàn)方案。

本人很喜歡Oracle,在工作中也很喜歡總結(jié)關(guān)于Oracle SQL語句的經(jīng)驗教訓,下面就這個問題來詳細說說吧。數(shù)據(jù)庫管理員還可以通過下述語句查看低效率的Oracle SQL語句,優(yōu)化這些語句也有助于提高CPU的利用率。

  1. SELECT BUFFER_GETS, EXECUTIONS, SQL_TEXT FROM V$SQLAREA; 

查看數(shù)據(jù)庫的沖突情況

數(shù)據(jù)庫管理員可以通過V$SYSTEM_EVENT數(shù)據(jù)字典中的“l(fā)atch free”統(tǒng)計項查看Oracle數(shù)據(jù)庫的沖突情況,如果沒有沖突的話,latch free查詢出來沒有結(jié)果。如果沖突太大的話,數(shù)據(jù)庫管理員可以降低spin_count參數(shù)值,來消除高的CPU使用率。

Oracle SQL語句的調(diào)整原則

SQL語言是一種靈活的語言,相同的功能可以使用不同的語句來實現(xiàn)。但是語句的執(zhí)行效率是很不相同的,程序員可以使用EXPLAIN PLAN語句來比較各種實現(xiàn)方案,并選出最優(yōu)的實現(xiàn)方案??偟脕碇v,程序員寫Oracle SQL語句需要滿足考慮如下規(guī)則:

(1)盡量使用索引。試比較下面兩條Oracle SQL語句:

◆ Oracle SQL語句A

  1. SELECT dname, deptno FROM dept WHERE deptno NOT IN  
  2. (SELECT deptno FROM emp); 

◆ Oracle SQL語句B

  1. SELECT dname, deptno FROM dept WHERE NOT EXISTS  
  2. (SELECT deptno FROM emp WHERE dept.deptno = emp.deptno); 

這兩條查詢語句實現(xiàn)的結(jié)果是相同的,但是執(zhí)行語句A的時候,Oracle會對整個emp表進行掃描,沒有使用建立在emp表上的deptno索引;執(zhí)行語句 B的時候,由于在子查詢中使用了聯(lián)合查詢,Oracle只是對emp表進行的部分數(shù)據(jù)掃描,并利用了deptno列的索引。所以,語句B的效率要比語句A 的效率高一些。

(2)選擇聯(lián)合查詢的聯(lián)合次序。

(3)在子查詢中慎重使用IN或者NOT IN語句,使用where (NOT) exists的效果要好的多。

(4)慎重使用視圖的聯(lián)合查詢,尤其是比較復雜的視圖之間的聯(lián)合查詢。一般對視圖的查詢最好都分解為對數(shù)據(jù)表的直接查詢效果要好一些。

(5)可以在參數(shù)文件中設置SHARED_POOL_RESERVED_SIZE參數(shù),這個參數(shù)在SGA共享池中保留一個連續(xù)的內(nèi)存空間,連續(xù)的內(nèi)存空間有益于存放大的SQL程序包。

(6)Oracle公司提供的DBMS_SHARED_POOL程序可以幫助程序員將某些經(jīng)常使用的存儲過程“釘”在SQL區(qū)中而不被換出內(nèi)存,程序員對于經(jīng)常使用并且占用內(nèi)存很多的存儲過程“釘”到內(nèi)存中有利于提高最終用戶的響應時間。

至此,我們完成了對Oracle數(shù)據(jù)庫的優(yōu)化。Oracle數(shù)據(jù)庫的性能優(yōu)化調(diào)整是一個系統(tǒng)工程,涉及的方面很多。數(shù)據(jù)庫管理員需要綜合運用上面介紹的優(yōu)化方法和規(guī)律,認真分析Oracle運行過程當中出現(xiàn)的各種問題,合理優(yōu)化,才能保證Oracle數(shù)據(jù)庫高效地運行。

【編輯推薦】

  1. 閑扯Oracle數(shù)據(jù)導入
  2. 精煉概括Oracle性能測試
  3. 簡介Oracle INDEX提示
  4. 五分鐘精通Oracle Hints
  5. 簡單介紹Oracle驅(qū)動表
責任編輯:佚名 來源: 博客園
相關(guān)推薦

2009-03-04 09:06:56

優(yōu)化sqlOracle

2010-04-12 10:53:07

Oracle SQL

2010-04-26 14:32:21

Oracle SQL

2011-08-18 14:25:26

OracleEXPLAIN PLA

2009-11-16 17:55:58

Oracle SQL語

2009-09-09 18:03:47

LINQ to SQL

2009-11-06 17:21:36

驗證Oracle SQ

2010-04-13 14:36:17

Oracle性能檢測

2009-12-21 10:01:05

Oracle技術(shù)

2009-11-05 18:07:33

Oracle導出sql

2009-11-06 17:13:24

Oracle SQL語

2010-04-13 15:04:16

Oracle優(yōu)化

2010-04-29 12:05:21

Oracle使用SQL

2010-04-06 14:26:41

Oracle復制表

2009-11-17 13:35:40

Oracle SQL語

2010-04-20 15:22:34

Oracle SQL

2010-04-29 14:06:40

Oracle SQL

2009-01-14 09:28:12

OracleSQL10g

2010-04-12 14:22:13

Oracle性能sql語句

2010-04-13 15:23:03

Oracle 9i s
點贊
收藏

51CTO技術(shù)棧公眾號