2011-04-06 19 views
1

調整一個大的sql字符串時只是解釋計劃嗎? 因爲當我在Oracle的TOAD(它生成解釋計劃)中按Ctrl + E時,這需要幾秒鐘的時間。 TOAD執行的任何事情不僅僅是生成解釋計劃,還是確實如此,以便解析階段對於特定的sql語句需要2-3秒?解析SQL語句Oracle和TOAD的階段

我真的無法看到如何在查看解釋計劃時再次優化sql字符串。所以我認爲在執行計劃之前可能會發生一些事情?

在此先感謝 馬丁(新手Oracle調優專家)

+0

爲什麼要2-3秒鐘才能獲得解釋計劃? – tbone 2011-04-06 13:01:14

+0

,因爲它速度不夠 – Martin 2011-04-07 08:39:04

+0

比較TOAD和SQL * Plus的性能。然後,您會看到TOAD是否需要時間來做額外的事情,或者只是數據庫花費時間解析查詢。 – 2011-04-07 09:04:33

回答

2

解釋計劃不會告訴你一切 - 甲骨文只是告訴你一個估計查詢的成本
要獲得查詢的成本,您必須實際執行它並在之後檢查性能(例如,使用tkprof)。
我建議您檢查一下Asktom,例如
http://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:8764517459743
並獲得有關Oracle性能調優的好書(例如Tom Kyte的「Effective Oracle by Design」)。