資源描述:
《sql server數(shù)據(jù)庫性能調(diào)整與優(yōu)化》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、SQLSERVER數(shù)據(jù)庫性能調(diào)整與優(yōu)化 摘要:微軟的SQLServer數(shù)據(jù)庫系統(tǒng),因其各種優(yōu)點在軟件系統(tǒng)市場上占有比較大的比例,但是數(shù)據(jù)庫在使用過程中也會出現(xiàn)多種可以導(dǎo)致服務(wù)器運行速度變慢或降低數(shù)據(jù)訪問效率的事件發(fā)生。文章從多個方面講述了SQLServer數(shù)據(jù)庫系統(tǒng)調(diào)整和優(yōu)化策略,可以有效提高數(shù)據(jù)庫的查詢速度。 關(guān)鍵字:SQLServer;應(yīng)用程序;B/S;數(shù)據(jù)復(fù)制 中圖分類號:TP311文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2016)15-0012-02 基于微軟的SQLServer數(shù)據(jù)
2、庫系統(tǒng),是目前很多軟件所使用的數(shù)據(jù)庫,其功能強大,而且兼容性能較好,適用于大多數(shù)的軟件開發(fā)系統(tǒng)。但是,任何一個數(shù)據(jù)庫系統(tǒng)在操作較長一段時間后,都可能存在一定的性能問題,這個性能問題包括多個方面,主要涉及數(shù)據(jù)庫的內(nèi)存、操作系統(tǒng)、參數(shù)設(shè)置、操作應(yīng)用程序及硬件等多個方面。因此,就像操作系統(tǒng)一樣,在一個數(shù)據(jù)庫系統(tǒng)運行一段時間后,對其進(jìn)行優(yōu)化對整個軟件系統(tǒng)的正常運行起著非常重要的作用,可以有效促進(jìn)軟件系統(tǒng)的穩(wěn)定性、可用性和高效性,節(jié)約系統(tǒng)開銷,解決系統(tǒng)瓶頸?! ?性能調(diào)整與優(yōu)化概述7 性能調(diào)整是指的對系統(tǒng)的相關(guān)
3、參數(shù)、應(yīng)用程序、軟硬件系統(tǒng)進(jìn)行優(yōu)化,從而可以有效改變系統(tǒng)性能的一種活動。對數(shù)據(jù)庫系統(tǒng)的性能優(yōu)化及調(diào)整主要包括對軟硬件配置、操作系統(tǒng)及數(shù)據(jù)庫管理系統(tǒng)的配置進(jìn)行優(yōu)化,還包括對訪問這些配置的應(yīng)用程序的分析與了解?! ?shù)據(jù)庫性能是否優(yōu)秀的判定標(biāo)準(zhǔn)主要是看這個數(shù)據(jù)庫各個性能指標(biāo),一個數(shù)據(jù)庫的性能指標(biāo)主要包含以下幾個部分:事務(wù)處理所占用的系統(tǒng)資源、事件的響應(yīng)時間以及CPU的時間量。性能并不是一成不變的,而是隨著使用的時間和環(huán)境的變化而變化。數(shù)據(jù)庫系統(tǒng)的性能受使用應(yīng)用程序、本身的體系結(jié)構(gòu)和硬件設(shè)備性能及連接數(shù)目及資
4、源等多個方面的影響?! ∷^性能調(diào)整,就是通過優(yōu)化提高系統(tǒng)的高效性,消除系統(tǒng)使用瓶頸。一個系統(tǒng)是否高效,主要是看他的瓶頸,因為這個是系統(tǒng)性能限制的主要決定因素,可能是軟件,也可能是硬件部分。如果系統(tǒng)的瓶頸限制過大,則對數(shù)據(jù)庫系統(tǒng)的訪問和存儲及更新都有很大影響,減少系統(tǒng)瓶頸,可以將一個系統(tǒng)性能最大程度的發(fā)揮。為了有效去除系統(tǒng)瓶頸,對性能進(jìn)行調(diào)整,必須采取一定的步驟和方法去調(diào)整所有和性能相關(guān)的組件,包括應(yīng)用調(diào)整和SQLServer?! ?應(yīng)用調(diào)整 對數(shù)據(jù)庫的性能優(yōu)化來說,最有可能導(dǎo)致數(shù)據(jù)庫性能產(chǎn)生變化的就
5、是應(yīng)用軟件的影響。應(yīng)用調(diào)整相對于硬件來說更容易做到監(jiān)控和修改,也更容易顯示出效果來。應(yīng)用的調(diào)整和優(yōu)化也可以影響到數(shù)據(jù)系統(tǒng)的后續(xù)步驟的調(diào)整,有效地減小系統(tǒng)開支,使普通的應(yīng)用程序不至于占用太多的系統(tǒng)資源。應(yīng)用調(diào)整一般來說是對SQLSERVER性能調(diào)整的第一步,也是關(guān)鍵的一步,主要包括應(yīng)用程序調(diào)整、頁面應(yīng)用調(diào)整、數(shù)據(jù)庫查詢語句調(diào)整等多個因素。7 1)SQL語句優(yōu)化 數(shù)據(jù)庫性能優(yōu)化中,標(biāo)準(zhǔn)查詢語句(SQL)的優(yōu)化可以有效提高數(shù)據(jù)查詢、更新、插入的執(zhí)行效率。低效率的數(shù)據(jù)庫查詢語句,往往會占用過多的資源并訪問過
6、多的數(shù)據(jù)庫,從而使系統(tǒng)的響應(yīng)時間變長,嚴(yán)重影響系統(tǒng)的性能。通過優(yōu)化SQL語句,改變數(shù)據(jù)庫查詢方法或途徑,可以有效提高系統(tǒng)的性能。數(shù)據(jù)庫系統(tǒng)的應(yīng)用最多的就是將數(shù)據(jù)庫的數(shù)據(jù)顯示出來,這離不開數(shù)據(jù)庫的查詢語句,這也是影響系統(tǒng)性能最關(guān)鍵的一個步驟。微軟的SQLServer本身提供了數(shù)據(jù)庫的查詢和優(yōu)化方法,對常用的數(shù)據(jù)庫查詢語句進(jìn)行分析,可以找到最佳的查詢語句,從而可以減少輸入/輸出次數(shù),提高執(zhí)行效率。但是微軟提供的查詢優(yōu)化器很難能夠完全解決查詢語句的優(yōu)化,比如語義方面的問題等?! ?)B/S模式優(yōu)化 目前很多
7、軟件的開發(fā)模式都采用了基于B/S的模式,在這種模式下,用戶端無須在安裝多余的軟件,服務(wù)器將后臺處理的數(shù)據(jù)通過HTTP協(xié)議傳輸?shù)娇蛻舳?。這種做法實際上減輕了前端客戶機(jī)的工作量,而將更的計算負(fù)載交給了數(shù)據(jù)庫服務(wù)器,所以在這種模式下對數(shù)據(jù)庫進(jìn)行優(yōu)化可以取得不錯的效果,一般情況下采取以下的優(yōu)化策略?! eb應(yīng)用程序優(yōu)化:7 在B/S架構(gòu)的軟件模型中,對數(shù)據(jù)庫系統(tǒng)的訪問是來自前端的數(shù)據(jù)庫查詢語句,所以Web應(yīng)用程序優(yōu)化也主要表現(xiàn)在對大量查詢語句的優(yōu)化上,除了使用查詢優(yōu)化器進(jìn)行優(yōu)化外,還要注意的查詢方法的基本操
8、作原則就是,數(shù)據(jù)查詢要盡量少的涉及相關(guān)的數(shù)據(jù)庫和數(shù)據(jù)量,并且隨著查詢的進(jìn)行,查詢語句要操作的數(shù)據(jù)量要迅速減小,并快速地顯示出來,這樣才不至于系統(tǒng)響應(yīng)時間過長。 Web服務(wù)器優(yōu)化: 對Web服務(wù)器的優(yōu)化中,主要是對前端應(yīng)用程序?qū)?shù)據(jù)庫的訪問做一定的限制,由于在B/S結(jié)構(gòu)的系統(tǒng)中,客戶訪問服務(wù)器的訪問量很大,所以要對長期要求占用系統(tǒng)資源的客戶應(yīng)用程序進(jìn)行限制,以免出現(xiàn)服務(wù)器只為很少的客戶服務(wù),而大量的服務(wù)在排除的現(xiàn)象發(fā)生?! ∵\算負(fù)載與網(wǎng)絡(luò)