亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Oracle數(shù)據(jù)庫系統(tǒng)的性能優(yōu)化與調(diào)整研究

        2016-12-31 00:00:00韓芳
        科技創(chuàng)新與應(yīng)用 2016年28期

        摘 要:文章將結(jié)合自身使用數(shù)據(jù)庫的經(jīng)驗(yàn),對Oracle數(shù)據(jù)庫系列的性能優(yōu)化和調(diào)整進(jìn)行研究。內(nèi)容包括SQL語句優(yōu)化、內(nèi)存分配的調(diào)整和磁盤I/O的優(yōu)化。通過統(tǒng)一的規(guī)劃、分析做出相應(yīng)的調(diào)整,保障系統(tǒng)高效地運(yùn)行,節(jié)約系統(tǒng)和內(nèi)存的開銷、解決系統(tǒng)瓶頸問題,從而提高數(shù)據(jù)庫的實(shí)用性、穩(wěn)定性和持久性。

        關(guān)鍵詞:Oracle;性能;SQL語句優(yōu)化;內(nèi)存調(diào)整;磁盤I/O

        1 概述

        在大型的數(shù)據(jù)庫應(yīng)用系統(tǒng)中,隨著數(shù)據(jù)處理量的劇增和數(shù)據(jù)處理復(fù)雜程度的增加,用戶對作為系統(tǒng)核心的數(shù)據(jù)庫的安全和性能的要求越來越高。在盡量不增加硬件成本的情況下提升現(xiàn)有的數(shù)據(jù)庫應(yīng)用系統(tǒng)的性能,是所有大型數(shù)據(jù)庫系統(tǒng)開發(fā)和維護(hù)的一個(gè)重要的目標(biāo)。

        2 Oracle數(shù)據(jù)庫性能優(yōu)化與調(diào)整技術(shù)

        Oracle作為全球第一大數(shù)據(jù)庫產(chǎn)品,其優(yōu)越性不僅在于其強(qiáng)大的安全性,功能的穩(wěn)定性,同時(shí)它還是高度可優(yōu)化的軟件工具[1]??梢越?jīng)常性的調(diào)整和優(yōu)化其性能,以防止出現(xiàn)系統(tǒng)瓶頸。

        數(shù)據(jù)庫性能優(yōu)化與調(diào)整所涉及的內(nèi)容比較復(fù)雜,涉及數(shù)據(jù)庫運(yùn)行的很多方面,文章基于某大學(xué)圖書管理系統(tǒng)進(jìn)行研究,主要是從數(shù)據(jù)庫角度進(jìn)行優(yōu)化與調(diào)整。主要包含:查詢優(yōu)化、內(nèi)存調(diào)整和磁盤I/O分配這三方面。也是最常用的、影響最大的幾個(gè)方面。只有將其充分利用得當(dāng),才能更加突出性能優(yōu)化的效率。

        2.1 Oracle數(shù)據(jù)庫查詢優(yōu)化

        2.1.1 語句優(yōu)化器

        根據(jù)優(yōu)化器獲得語句執(zhí)行計(jì)劃和統(tǒng)計(jì)信息,了解查詢結(jié)果反應(yīng)遲鈍的現(xiàn)象,從而找出不足之處,加以修改,就能夠極大的提高語句查詢的速度??焖俚玫较胍慕Y(jié)果。

        Autotrace優(yōu)化器的使用:Autotrace優(yōu)化器能夠顯示SQL的查詢結(jié)果,能夠自動(dòng)顯示統(tǒng)計(jì)信息和執(zhí)行計(jì)劃[2]。利用Autotrace工具產(chǎn)生的結(jié)果,我們就可以將它作為優(yōu)化的依據(jù)。

        2.1.2 SQL語句的優(yōu)化

        在寫SQL語句時(shí),大多數(shù)人只關(guān)注著語句查詢出來的結(jié)果是否是自己想要的。至于等待時(shí)間則顯得尤為不重要。但是一旦我們數(shù)據(jù)庫中的數(shù)據(jù)量過大,查詢語句條件過多或者有過多的查詢條件、索引的不適當(dāng)?shù)慕⒍紩斐捎脩舻却龝r(shí)間過長。那么如果將它們進(jìn)行合理的優(yōu)化后,查詢的速度會更為明顯。

        (1)使用不當(dāng)?shù)腟QL語句

        避免在索引列上使用函數(shù)或計(jì)算,在where子句中,如果索引是函數(shù)的一部分,優(yōu)化器會使用全表掃描而不是繼續(xù)使用索引;要避免在索引列上使用“!=”和“not”,因?yàn)樗饕荒芨嬖V哪些數(shù)據(jù)存在于表中,而不會去告訴哪些數(shù)據(jù)不存在于表中。當(dāng)數(shù)據(jù)庫遇到“not”或是“!=”時(shí),它就會停止使用索引,去執(zhí)行全表掃描。

        (2)參數(shù)設(shè)置

        將初始化參數(shù)OPTIMIZER_INDEX_COST_ADJ的非默認(rèn)值25變?yōu)槟J(rèn)值100。這個(gè)參數(shù)影響CBO決定使用一個(gè)有效的索引而不是全表掃描。

        (3)使用工具獲得執(zhí)行計(jì)劃

        也就是前面所講的,根據(jù)使用AUTOTRACE可以查看出具體的查詢執(zhí)行情況,從而可以分析得出效率低的原因。使用該工具后,確保了在提交的這些語句中會給出最佳的SQL語句。

        優(yōu)化的工具還有EXPLANE,SQLTRACE等,都是能夠提高SQL語句的性能[3]。

        2.2 優(yōu)化數(shù)據(jù)庫內(nèi)存分配

        如果一個(gè)數(shù)據(jù)庫本身的內(nèi)存很小,即便window系統(tǒng)是4G或6G內(nèi)存或者跟更大,數(shù)據(jù)庫若想保存一張數(shù)據(jù)量很大的表時(shí),也要花費(fèi)很長時(shí)間。操作系統(tǒng)的內(nèi)存再大也發(fā)揮不出來其作用。那么,為了解決軟件運(yùn)行的速度問題,使內(nèi)存充分利用起來,調(diào)整數(shù)據(jù)庫的內(nèi)存就顯得尤為重要。

        Oracle數(shù)據(jù)庫的內(nèi)存可劃分為系統(tǒng)全局區(qū)(SGA)和進(jìn)程全局區(qū)(PGA)。SGA是一組共享的內(nèi)存結(jié)構(gòu),它與操作系統(tǒng)、CPU、內(nèi)存有關(guān),在系統(tǒng)物理內(nèi)存的一半左右。它里面主要是存儲數(shù)據(jù)庫實(shí)例的數(shù)據(jù)和控制文件信息,是數(shù)據(jù)庫實(shí)例的基本組成部分。所以,如果想提高數(shù)據(jù)庫的性能問題,那么就要對SGA的參數(shù)進(jìn)行調(diào)整,使其達(dá)到最優(yōu)。

        通過調(diào)整參數(shù)值,可以在查詢時(shí)提高資源利用效率,從而減少用戶等待時(shí)間。常用的幾個(gè)參數(shù)如下:

        Log_buffer:日志緩沖區(qū)的大小設(shè)置,作為一個(gè)正式系統(tǒng),可能考慮先設(shè)置這部分為log_buffer最好在1-3M之間,即使范圍很大,也不能全部用到,之后可針對具體情況再進(jìn)一步調(diào)整。重做日志緩沖區(qū)保存著數(shù)據(jù)庫的重做條目(redo entry)或修改日志。日志緩沖區(qū)的內(nèi)容總是會盡快寫入重做日志中。

        Large_pool_size:大緩沖池的設(shè)置,一般情況下在20-30M就可以了。大緩沖池的作用就是保存并行查詢時(shí)的信息。

        shared_pool_size:共享池是指SGA中存儲共享內(nèi)存結(jié)構(gòu)的區(qū)域,共享池又包括庫緩存池(library cache)和數(shù)據(jù)字典緩沖池。如果要提高系統(tǒng)的性能,就要確保共享池的空間足夠才行。

        2.3 磁盤I/O優(yōu)化

        磁盤I/O對于整個(gè)Oracle數(shù)據(jù)庫來說,是其重要的組成部分。通過了解磁盤I/O,將其進(jìn)行合理調(diào)整,將大大提高整個(gè)系統(tǒng)數(shù)據(jù)庫的性能。它也是數(shù)據(jù)庫的核心。

        數(shù)據(jù)庫的數(shù)據(jù)最終是要存儲在物理磁盤上。磁盤I/O的操作是數(shù)據(jù)庫性能最重要的方面,是整個(gè)數(shù)據(jù)庫最大的開銷部分。影響磁盤I/O的主要因素有磁盤競爭、I/O次數(shù)過多以及數(shù)據(jù)塊的分配管理。

        以下幾點(diǎn)可合理分配磁盤I/O:(1)創(chuàng)建用戶表空間,與系統(tǒng)表空間要分開存放在不同的磁盤上,以減少磁盤競爭。(2)對于經(jīng)常使用的對象,應(yīng)將其訪問量大的數(shù)據(jù)文件單獨(dú)放在一個(gè)磁盤中。而且同一個(gè)表空間的多個(gè)數(shù)據(jù)文件也要放在不同的磁盤上,因?yàn)槿舴旁谕淮疟P上會引起I/O競爭。(3)將重做日志文件進(jìn)行分組。因?yàn)槲覀兤綍r(shí)修改的數(shù)據(jù)都是會先寫入重做日志文件中。所以就需要重做日志文件空間足夠大。

        3 Oracle數(shù)據(jù)庫系統(tǒng)優(yōu)化實(shí)驗(yàn)

        以大學(xué)圖書館信息系統(tǒng)作為研究對象的數(shù)據(jù)庫優(yōu)化實(shí)例,該數(shù)據(jù)庫約為5G byte左右,使用UNIX操作系統(tǒng),優(yōu)化結(jié)果如表1所示。從表1可以看出,數(shù)據(jù)庫經(jīng)過調(diào)整與優(yōu)化內(nèi)存、調(diào)整與優(yōu)化I/O和SQL優(yōu)化后,響應(yīng)時(shí)間變得越來越短,系統(tǒng)性能得到逐步提高。

        4 結(jié)束語

        為了保證應(yīng)用系統(tǒng)的高效性和穩(wěn)定性,文章從內(nèi)存優(yōu)化與調(diào)整、 SQL語句的優(yōu)化與調(diào)整以及SQL調(diào)整等方面,提出了具有針對性的優(yōu)化方法。數(shù)據(jù)庫系統(tǒng)的性能調(diào)整與優(yōu)化是一個(gè)系統(tǒng)工程。要使系統(tǒng)能穩(wěn)定高效的運(yùn)行,除了需要對系統(tǒng)本身的體系結(jié)構(gòu)有深入的理解的同時(shí),還需要對系統(tǒng)運(yùn)行的環(huán)境比較熟悉。并且體現(xiàn)在系統(tǒng)設(shè)計(jì)、開發(fā)、運(yùn)行等各個(gè)階段對數(shù)據(jù)庫及應(yīng)用程序等進(jìn)行調(diào)整和性能調(diào)節(jié),從而保證應(yīng)用系統(tǒng)的高效、穩(wěn)定運(yùn)行。

        參考文獻(xiàn)

        [1]蓋國強(qiáng).循序漸進(jìn)Oracle數(shù)據(jù)庫管理、優(yōu)化與備份恢復(fù)[M].北京:人民郵電出版社,2007.

        [2]孫樹軍.基于數(shù)據(jù)庫的性能調(diào)整及優(yōu)化技術(shù)研究[Z].北京工業(yè)大學(xué)圖書館,2011:9-41.

        [3]鄒俊.基于數(shù)據(jù)庫系統(tǒng)性能調(diào)整與優(yōu)化研究[Z].江西財(cái)經(jīng)大學(xué)圖書館,2006:6-14.

        亚洲人成精品久久久久| 一区二区三区日本久久| 亚洲国产精品嫩草影院久久| 精品日韩欧美一区二区在线播放| 久久夜色精品国产噜噜av| 欧美在线资源| 中文字幕Aⅴ人妻一区二区苍井空| 少妇高潮喷水正在播放| 国产精品高潮无码毛片| 精品人妻少妇一区二区中文字幕| 精品久久久久久电影院| 香蕉久久夜色精品国产| 亚洲乱色视频在线观看| 日本中文字幕一区二区视频| 无遮高潮国产免费观看韩国| 中文字幕偷拍亚洲九色| 精品午夜一区二区三区| 亚洲精品一区二区三区日韩| 蜜桃av一区二区三区久久| 久久人妻一区二区三区免费| 男女真人后进式猛烈视频网站| 久久免费看黄a级毛片| 优优人体大尺大尺无毒不卡| 国自产拍偷拍精品啪啪一区二区| 东京热加勒比无码少妇| 无码少妇一区二区三区| 肉体裸交丰满丰满少妇在线观看 | 东北女人一级内射黄片| 日韩在线 | 中文| 无码av中文一区二区三区桃花岛| 亚洲一区自拍高清亚洲精品| 中文www新版资源在线| 无码国产午夜福利片在线观看| 免费现黄频在线观看国产| 91亚洲国产三上悠亚在线播放| AV熟妇导航网| 妇女自拍偷自拍亚洲精品| 久久精品一区二区熟女| 99久久免费看精品国产一| 亚洲av无码成h在线观看| 麻豆久久久9性大片|