新聞中心
Oracle SQL計(jì)劃管理可以改善SQL語句性能,下面就為您詳細(xì)介紹Oracle SQL計(jì)劃管理方面的知識(shí),供您參考學(xué)習(xí)之用。

創(chuàng)新互聯(lián)專注于墨竹工卡網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供墨竹工卡營(yíng)銷型網(wǎng)站建設(shè),墨竹工卡網(wǎng)站制作、墨竹工卡網(wǎng)頁設(shè)計(jì)、墨竹工卡網(wǎng)站官網(wǎng)定制、小程序開發(fā)服務(wù),打造墨竹工卡網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供墨竹工卡網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。
Oracle SQL計(jì)劃管理
您看到過多少次下面的情況:一個(gè)查詢擁有可能的最佳計(jì)劃,但一些事情突然發(fā)生,導(dǎo)致該計(jì)劃被拋棄。這些事情可能是某人重新對(duì)表進(jìn)行了分析,或者 star_transformation 等影響優(yōu)化程序的參數(shù)被改變 — 各種可能性是無窮無盡的。出于絕望,您可能會(huì)禁止對(duì)數(shù)據(jù)庫進(jìn)行任何更改,這意味著不收集數(shù)據(jù)庫統(tǒng)計(jì)數(shù)據(jù)、不更改任何參數(shù)等等。
但這說起來容易做起來難。當(dāng)數(shù)據(jù)模式改變時(shí)會(huì)發(fā)生什么?以自適應(yīng)游標(biāo)一節(jié)中顯示的示例為例?,F(xiàn)在,CUSTOMERS 表中填充了來自紐約的客戶,因此 STATE_CODE 大部分為 "NY"。因此,當(dāng)執(zhí)行含有如下所示謂詞的查詢時(shí):
where state_code = 'CT'
系統(tǒng)執(zhí)行一次全表掃描而非索引掃描。當(dāng)謂詞為:
where state_code = 'CT'
由于僅將返回幾行結(jié)果,因此系統(tǒng)使用索引。然而,如果模式發(fā)生改變 - 假設(shè),突然出現(xiàn)大量來自康涅狄格 (state_code = 'CT') 的客戶,導(dǎo)致含有 CT 的結(jié)果的百分比升至 70%,此時(shí)會(huì)發(fā)生什么?在該情況下,CT 查詢應(yīng)使用全表掃描。但是,由于您已禁止收集優(yōu)化程序統(tǒng)計(jì)數(shù)據(jù),優(yōu)化程序不會(huì)了解模式的更改,并且會(huì)繼續(xù)提供無效率的索引掃描路徑。您可以做些什么?
如果 Oracle 使用最優(yōu)計(jì)劃,但在統(tǒng)計(jì)數(shù)據(jù)收集或數(shù)據(jù)庫參數(shù)等底層因素更改時(shí)重新評(píng)估該計(jì)劃,此時(shí),當(dāng)且僅當(dāng)新計(jì)劃更有效時(shí)數(shù)據(jù)庫才會(huì)使用,結(jié)果如何?該方案非常理想,不是嗎?它在 Oracle 數(shù)據(jù)庫 11g 中已成為可能。
【編輯推薦】
自增長(zhǎng)oracle標(biāo)識(shí)列實(shí)現(xiàn)方法
Oracle命令行自定義編輯器vi
oracle命令行登錄的實(shí)現(xiàn)
ORACLE增加表空間的實(shí)現(xiàn)
Oracle創(chuàng)建序列的語法
分享文章:帶您深入了解OracleSQL計(jì)劃管理
URL鏈接:http://fisionsoft.com.cn/article/dhpdpjo.html


咨詢
建站咨詢
