最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Oracle數(shù)據(jù)庫優(yōu)化策略總結(jié)篇

 更新時間:2015年08月14日 12:01:32   投稿:lijiao  
本文介紹了一些很實用但卻不是很常見的Oracle數(shù)據(jù)庫的優(yōu)化策略,包括批量FETCH、SQL預(yù)解析等,需要的朋友可以參考下

為了提高查詢效率,我們常常做一些優(yōu)化策略。本文主要介紹一些Oracle數(shù)據(jù)庫的一些不常見卻是非常有用的優(yōu)化策略,希望能對您有所幫助。

SQL語句優(yōu)化

這個好辦,抓到挪借CPU高的SQL語句,依據(jù)索引、SQL技巧等修改一下,行之管用。

SELECT時不利用函數(shù)

在做頻繁的查詢壟斷時,盡量直接select字段名,然后利用C語言代碼對查詢收獲做二次加工,避免讓Oracle來做混雜的函數(shù)可能數(shù)學(xué)計算。因為Oracle出于通用性的琢磨,其函數(shù)及數(shù)學(xué)計算的速度遠不及用C語言直接編譯成機器碼后計算來的快。

綁定變量

這個能夠大幅度減退SQL的“hard parse”,我們大局部過程都曾經(jīng)告終了變量綁定。個別未曾告終的,修正一下,也能很快看到收獲。

批量FETCH

萬一順次select會歸來多條(幾百、上千)登記,利用批量Fetch,例如順次fetch 1000條登記,要比一條條的fetch數(shù)據(jù)快的多,也能夠管用減退oracle的壓力。

批量提交

順次修正多條(例如小于10000條左右)登記,然后順次性提交,要比每條提交順次快的多。當然前提是業(yè)務(wù)邏輯批準這么做。

批量增刪改

萬一必需順次性修正可能剔除多條登記,能夠批準批量數(shù)組綁定的措施,這個和前面說得“綁定變量”相仿,差異是前者綁定的是一個變量,這里綁定的是一個大數(shù)組的首指針,這種措施要比逐條綁定厲行快的多。

SQL預(yù)解析

前面的大局部是批量壟斷,還有一種常見的場景是小事務(wù)壟斷,但頻率極其高nextplas.com。這種場景等閑SQL也不混雜,幾乎未曾優(yōu)化的余地了,然而由于壟斷頻繁,同樣會構(gòu)成CPU居高不下。現(xiàn)在我們的過程大局部都是下面這個利用形式:

loop 
 
parse sql; 
 
bind var; 
 
execute sql; 
 
end loop; 

固然我們利用了綁定變量的措施,然而由于壟斷頻繁,同樣構(gòu)成許多的“soft parse”以及網(wǎng)絡(luò)通信。在內(nèi)存數(shù)據(jù)庫中,我們等閑批準預(yù)解析的措施來長進效率,事實上,Oracle很早就給開發(fā)者供給這種形式,只是開發(fā)者嫌繁瑣沒利于用而已。將過程改成下列形式:

parse sql; 
 
bind var; 
 
loop 
 
execute sql; 
 
end loop; 

這么就能夠管用減退Oracle的壓力,能夠?qū)栃行势鸫a長進一倍。然而這種形式波及到過程構(gòu)造的改變,定然在設(shè)計階段就這么做。否則,后期再調(diào)劑的話,危險和工作量都會很大。

SQL語句的一些優(yōu)化措施

1、SQL語句用大寫的;因為Oracle總是先解析SQL語句,把小寫的字母轉(zhuǎn)換成大寫的再厲行。

2、避免在索引列上利用NOT等閑,我們要避免在索引列上利用NOT, NOT會發(fā)生在和在索引列上利用函數(shù)雷同的波及。

3、當Oracle“碰到”NOT,他就會靜止利用索引轉(zhuǎn)而厲行全表掃描。

4、避免在索引列上利用計算。WHERE子句中,假定索引列是函數(shù)的一局部。優(yōu)化器將不利用索引而利用全表掃描。

5、盡量少用DISTINCT壟斷,用EXISTS輪換DISTINCTvalues should never be negative。

以上就是Oracle數(shù)據(jù)庫的優(yōu)化策略的全部,如果您想了解更多關(guān)于Oracle數(shù)據(jù)庫的知識,那就關(guān)注Oracle數(shù)據(jù)庫欄目,相信會對您有所收獲的。

相關(guān)文章

  • 使用zabbix監(jiān)控oracle表數(shù)據(jù)的方法

    使用zabbix監(jiān)控oracle表數(shù)據(jù)的方法

    有時候我們需要對表中的數(shù)據(jù)進行監(jiān)控,比如筆者的這種場景:?微服務(wù)自己實現(xiàn)了定時任務(wù),定時任務(wù)的執(zhí)行結(jié)果會記錄到某張日志表中,如果定時任務(wù)執(zhí)行失敗將會對業(yè)務(wù)產(chǎn)生影響,所以筆者用zabbix+python進行了監(jiān)控,當任務(wù)失敗時?進行告警,需要的朋友可以參考下
    2024-04-04
  • CMD操作oracle數(shù)據(jù)導(dǎo)庫過程圖解

    CMD操作oracle數(shù)據(jù)導(dǎo)庫過程圖解

    這篇文章主要介紹了CMD操作oracle數(shù)據(jù)導(dǎo)庫過程圖解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-07-07
  • MSSQL與Oracle數(shù)據(jù)庫事務(wù)隔離級別與鎖機制對比

    MSSQL與Oracle數(shù)據(jù)庫事務(wù)隔離級別與鎖機制對比

    事務(wù)隔離級別是并發(fā)控制的整體解決方案,其實際上是綜合利用各種類型的鎖和行版本控制,來解決并發(fā)問題。鎖是數(shù)據(jù)庫并發(fā)控制的內(nèi)部機制,是基礎(chǔ)。對用戶來說,只有當事務(wù)隔離級別無法解決一些并發(fā)問題和需求時,才有必要在語句中手動設(shè)置鎖。
    2014-08-08
  • Oracle數(shù)據(jù)庫基本操作及Spring整合Oracle數(shù)據(jù)庫詳解

    Oracle數(shù)據(jù)庫基本操作及Spring整合Oracle數(shù)據(jù)庫詳解

    這篇文章主要介紹了Oracle數(shù)據(jù)庫的基本概念、特點和操作權(quán)限,以及如何在Spring?Boot中整合Oracle數(shù)據(jù)庫,包括導(dǎo)入依賴、配置文件設(shè)置、實體類、Dao層和測試,需要的朋友可以參考下
    2025-02-02
  • oracle索引介紹(圖文詳解)

    oracle索引介紹(圖文詳解)

    在關(guān)系數(shù)據(jù)庫中,索引是一種與表有關(guān)的數(shù)據(jù)庫結(jié)構(gòu),它可以使對應(yīng)于表的SQL語句執(zhí)行得更快。索引的作用相當于圖書的目錄,可以根據(jù)目錄中的頁碼快速找到所需的內(nèi)容
    2014-06-06
  • ORACLE 報警日志如何查看?

    ORACLE 報警日志如何查看?

    目得:首先了解什么是外部表,與其它表的區(qū)別,建立一個簡單的外部表(主要看操作過程),最后我們用外部表查看ORACLE報警日志
    2009-06-06
  • oracle通過存儲過程上傳list保存功能

    oracle通過存儲過程上傳list保存功能

    這篇文章主要介紹了oracle通過存儲過程上傳list保存功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-05-05
  • Oracle 用戶密碼有效期的sql語句

    Oracle 用戶密碼有效期的sql語句

    這篇文章主要介紹了Oracle 用戶密碼有效期的sql語句的相關(guān)資料,需要的朋友可以參考下
    2016-01-01
  • Oracle管道函數(shù)pipelined?function的用法小結(jié)

    Oracle管道函數(shù)pipelined?function的用法小結(jié)

    這篇文章主要介紹了Oracle管道函數(shù)pipelined?function的用法,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-07-07
  • oracle11g管理員密碼忘記怎么辦 sqlplus解決忘記密碼問題

    oracle11g管理員密碼忘記怎么辦 sqlplus解決忘記密碼問題

    oracle11g管理員密碼忘記了怎么辦?這篇文章主要介紹了oracle 11g管理員密碼忘記問題的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06

最新評論

观塘区| 湟中县| 玛多县| 赣州市| 湘潭市| 南川市| 洮南市| 木里| 临湘市| 鲁山县| 喜德县| 都兰县| 德惠市| 隆化县| 永胜县| 阿鲁科尔沁旗| 山阴县| 武清区| 临西县| 农安县| 三江| 台山市| 三门峡市| 姜堰市| 保德县| 北票市| 九龙坡区| 凤阳县| 博兴县| 南宫市| 来凤县| 仁化县| 诸暨市| 萝北县| 旬邑县| 安国市| 赣榆县| 塔城市| 潮州市| 广东省| 河北区|