時(shí)間:2015/6/28來(lái)源:IT貓撲網(wǎng)作者:網(wǎng)管聯(lián)盟我要評(píng)論(0)
第1頁(yè):提高數(shù)據(jù)庫(kù)服務(wù)器性能
數(shù)據(jù)庫(kù)sql server跟Windows操作系統(tǒng)是同一個(gè)父母生的,他們?cè)谝恍┘夹g(shù)上具有共通性。這在很多方面都有體現(xiàn)。如在日常工作中,我們可以通過(guò)調(diào)整Windows操作系統(tǒng)的一些參數(shù)來(lái)提高SQLServer數(shù)據(jù)庫(kù)服務(wù)器的性能。
一、 提高虛擬內(nèi)存來(lái)提高數(shù)據(jù)庫(kù)服務(wù)器性能。
虛擬內(nèi)存簡(jiǎn)單的來(lái)說(shuō)就是內(nèi)盤(pán)中的一塊空間。當(dāng)物理內(nèi)存不夠時(shí),操作系統(tǒng)會(huì)自動(dòng)把某些駐留在內(nèi)存中暫時(shí)不用的內(nèi)容移植到這個(gè)在硬盤(pán)上的虛擬內(nèi)存中,以釋放更多的空間給新的應(yīng)用程序使用。也就是說(shuō),當(dāng)物理內(nèi)存使用完時(shí)操作系統(tǒng)會(huì)拿出一部分硬盤(pán)空間來(lái)充當(dāng)內(nèi)存使用,以緩解內(nèi)存的壓力。為此從某種程度來(lái)說(shuō),這個(gè)虛擬內(nèi)存的設(shè)置也會(huì)影響到數(shù)據(jù)庫(kù)服務(wù)器的性能。那么這個(gè)虛擬內(nèi)存到底該設(shè)置多少為好呢?這沒(méi)有一個(gè)固定的標(biāo)準(zhǔn)。這需要數(shù)據(jù)庫(kù)管理員根據(jù)部署的應(yīng)用來(lái)確定。
如數(shù)據(jù)庫(kù)沒(méi)有一些高級(jí)的應(yīng)用,如數(shù)據(jù)倉(cāng)庫(kù)、全文索引或者不適多個(gè)應(yīng)用服務(wù)一身的話,筆者認(rèn)為只要把虛擬內(nèi)存設(shè)置為物理內(nèi)存的1.5倍即可。但是,如果在數(shù)據(jù)庫(kù)服務(wù)器上配置了數(shù)據(jù)倉(cāng)庫(kù)或者全文索引的話,則這個(gè)1.5倍的虛擬內(nèi)存往往是不夠的。此時(shí)筆者建議需要把虛擬內(nèi)存配置為物理內(nèi)存的3倍到四倍。同時(shí),需要調(diào)整數(shù)據(jù)庫(kù)中的最大服務(wù)器內(nèi)存選項(xiàng),將其設(shè)置為物理內(nèi)存的1.5倍。也就是說(shuō),其在使用內(nèi)存的時(shí)候,可以使用虛擬內(nèi)存大小的一半。注意這個(gè)設(shè)置時(shí)必須的,否則的話,調(diào)整數(shù)據(jù)庫(kù)虛擬內(nèi)存很難起到應(yīng)有的效果。而且當(dāng)以后內(nèi)存升級(jí)了,則也需要同時(shí)更改這個(gè)兩個(gè)參數(shù)。
最后需要說(shuō)明的一點(diǎn)就是,虛擬內(nèi)存并不是越大越好。如果設(shè)置為10倍、20倍,那么這是浪費(fèi)。以往內(nèi)存中沒(méi)有這么多的內(nèi)容可以往虛擬內(nèi)存中存放。所以,針對(duì)SQL Server數(shù)據(jù)庫(kù)與Windows服務(wù)器來(lái)說(shuō),4倍于物理內(nèi)存的虛擬內(nèi)存已經(jīng)足夠了。設(shè)置的再大的話,就沒(méi)有多少的實(shí)際意義了。
二、 調(diào)整本地客戶端的任務(wù)優(yōu)先級(jí)。
在數(shù)據(jù)庫(kù)初始化的過(guò)程中,有大部分的任務(wù)需要在本地客戶端上完成。即時(shí)在后續(xù)維護(hù)中,出于某種原因仍然要在本地客戶端上操作。那么什么是本地客戶端呢?其實(shí)本地客戶端就是跟數(shù)據(jù)庫(kù)服務(wù)器部署在同一臺(tái)計(jì)算機(jī)上的客戶端。如我們?cè)趯?dǎo)入期初數(shù)據(jù)的時(shí)候,為了方便會(huì)在本地客戶端上直接進(jìn)行操作。因?yàn)檫@可以節(jié)省數(shù)據(jù)在網(wǎng)絡(luò)上傳輸?shù)臅r(shí)間。
不過(guò)在本地客戶端上進(jìn)行操作的時(shí)候,往往分為前臺(tái)運(yùn)行與后臺(tái)運(yùn)行。操作系統(tǒng)這么設(shè)計(jì)的本意是為了提高遠(yuǎn)程客戶端的執(zhí)行效率。如在遠(yuǎn)程客戶端生成物料需求計(jì)劃的時(shí)候,由于運(yùn)算量比較大,其花費(fèi)的時(shí)間可能比較久,如可能需要20分鐘。為了提高工作效率,對(duì)于類似的作業(yè),應(yīng)用程序可以把這個(gè)運(yùn)算放置在后臺(tái)運(yùn)行。不過(guò)需要注意的是,把某個(gè)作業(yè)放置在后臺(tái)運(yùn)行,并不能夠節(jié)省其運(yùn)行的時(shí)間,而往往由于放置在后臺(tái)的作業(yè)其優(yōu)先級(jí)比較低,往往實(shí)際花費(fèi)的時(shí)間還會(huì)延長(zhǎng),如會(huì)延長(zhǎng)到23分鐘等等。之所以要把這個(gè)長(zhǎng)時(shí)間運(yùn)行的作業(yè)放置在后臺(tái),主要是為了讓用戶不用干等,可以先作其他事情。等到運(yùn)行完成后,系統(tǒng)會(huì)自動(dòng)把相關(guān)的結(jié)果返回給用戶。這在感覺(jué)上是縮短了運(yùn)行的時(shí)間(往往在等待的過(guò)程中時(shí)間過(guò)得特別慢),而實(shí)際上其運(yùn)行的時(shí)間根本沒(méi)有縮短,甚至?xí)L(zhǎng)。
這個(gè)處理策略對(duì)于遠(yuǎn)程客戶端來(lái)說(shuō)確實(shí)有用,至少可以在感覺(jué)上縮短用戶的等待時(shí)間。而且可以讓用戶先進(jìn)行其他的操作。但是如果在本地客戶端上,處理某些作業(yè)的時(shí)候,可能并不希望如此。如在本地客戶度進(jìn)行物料需求計(jì)劃測(cè)試,數(shù)據(jù)庫(kù)管理員希望即時(shí)把這個(gè)計(jì)劃放置在后臺(tái)運(yùn)行,其也能夠與前臺(tái)應(yīng)用程序具有相同的優(yōu)先級(jí),以減少這個(gè)處理時(shí)間。所以,當(dāng)數(shù)據(jù)庫(kù)管理員遇到類似情況時(shí),就需要調(diào)整操作系統(tǒng)的相關(guān)設(shè)置,讓作為在后臺(tái)運(yùn)行的應(yīng)用程序,也能夠與前臺(tái)運(yùn)行的其他應(yīng)用程序具有相同的優(yōu)先級(jí)。
通常情況下,安裝完干凈的SQL Server數(shù)據(jù)庫(kù)時(shí),服務(wù)器任務(wù)
調(diào)度設(shè)置為"務(wù)",即前后臺(tái)應(yīng)用程序沒(méi)有優(yōu)先級(jí)的分別。也就是說(shuō),此時(shí)將為前臺(tái)應(yīng)用程序與后臺(tái)應(yīng)用程序提供相等的處理時(shí)間。但是有時(shí)候?yàn)榱思骖欉h(yuǎn)程客戶端,在部署實(shí)例的時(shí)候,會(huì)改變這設(shè)置。如把降低后臺(tái)應(yīng)用程序的優(yōu)先級(jí),讓更多的資源能夠服務(wù)于前臺(tái)應(yīng)用程序。在大部分情況下,這個(gè)設(shè)置是必要的。不過(guò)如果出于某些原因需要在本地客戶端執(zhí)行某些操作的話,則數(shù)據(jù)庫(kù)管理員需要暫時(shí)調(diào)整這個(gè)配置,以節(jié)省某些作業(yè)的運(yùn)行時(shí)間。有時(shí)候甚至可以將服務(wù)器任務(wù)調(diào)度設(shè)置為最大或者應(yīng)用程序,這就可以為前臺(tái)應(yīng)用程序提高最大的處理器時(shí)間。
可見(jiàn),任務(wù)調(diào)度計(jì)劃設(shè)置也沒(méi)有一個(gè)統(tǒng)一的優(yōu)劣標(biāo)準(zhǔn)。主要還是需要看數(shù)據(jù)庫(kù)服務(wù)器到底用來(lái)做什么?為此這也對(duì)數(shù)據(jù)庫(kù)管理員提出了比較高的要求。此時(shí)數(shù)據(jù)庫(kù)管理員必須要理解各種優(yōu)先級(jí)設(shè)置對(duì)于數(shù)據(jù)庫(kù)服務(wù)器性能的影響。然后再根據(jù)當(dāng)時(shí)的實(shí)際應(yīng)用來(lái)合理的調(diào)整任務(wù)級(jí)別的優(yōu)先級(jí),以取得本地客戶端操作的最大性能。
第1頁(yè):提高數(shù)據(jù)庫(kù)服務(wù)器性能
數(shù)據(jù)庫(kù)SQL Server跟Windows操作系統(tǒng)是同一個(gè)父母生的,他們?cè)谝恍┘夹g(shù)上具有共通性。這在很多方面都有體現(xiàn)。如在日常工作中,我們可以通過(guò)調(diào)整Windows操作系統(tǒng)的一些參數(shù)來(lái)提高SQLServer數(shù)據(jù)庫(kù)服務(wù)器的性能。
一、 提高虛擬內(nèi)存來(lái)提高數(shù)據(jù)庫(kù)服務(wù)器性能。
虛擬內(nèi)存簡(jiǎn)單的來(lái)說(shuō)就是內(nèi)盤(pán)中的一塊空間。當(dāng)物理內(nèi)存不夠時(shí),操作系統(tǒng)會(huì)自動(dòng)把某些駐留在內(nèi)存中暫時(shí)不用的內(nèi)容移植到這個(gè)在硬盤(pán)上的虛擬內(nèi)存中,以釋放更多的空間給新的應(yīng)用程序使用。也就是說(shuō),當(dāng)物理內(nèi)存使用完時(shí)操作系統(tǒng)會(huì)拿出一部分硬盤(pán)空間來(lái)充當(dāng)內(nèi)存使用,以緩解內(nèi)存的壓力。為此從某種程度來(lái)說(shuō),這個(gè)虛擬內(nèi)存的設(shè)置也會(huì)影響到數(shù)據(jù)庫(kù)服務(wù)器的性能。那么這個(gè)虛擬內(nèi)存到底該設(shè)置多少為好呢?這沒(méi)有一個(gè)固定的標(biāo)準(zhǔn)。這需要數(shù)據(jù)庫(kù)管理員根據(jù)部署的應(yīng)用來(lái)確定。
如數(shù)據(jù)庫(kù)沒(méi)有一些高級(jí)的應(yīng)用,如數(shù)據(jù)倉(cāng)庫(kù)、全文索引或者不適多個(gè)應(yīng)用服務(wù)一身的話,筆者認(rèn)為只要把虛擬內(nèi)存設(shè)置為物理內(nèi)存的1.5倍即可。但是,如果在數(shù)據(jù)庫(kù)服務(wù)器上配置了數(shù)據(jù)倉(cāng)庫(kù)或者全文索引的話,則這個(gè)1.5倍的虛擬內(nèi)存往往是不夠的。此時(shí)筆者建議需要把虛擬內(nèi)存配置為物理內(nèi)存的3倍到四倍。同時(shí),需要調(diào)整數(shù)據(jù)庫(kù)中的最大服務(wù)器內(nèi)存選項(xiàng),將其設(shè)置為物理內(nèi)存的1.5倍。也就是說(shuō),其在使用內(nèi)存的時(shí)候,可以使用虛擬內(nèi)存大小的一半。注意這個(gè)設(shè)置時(shí)必須的,否則的話,調(diào)整數(shù)據(jù)庫(kù)虛擬內(nèi)存很難起到應(yīng)有的效果。而且當(dāng)以后內(nèi)存升級(jí)了,則也需要同時(shí)更改這個(gè)兩個(gè)參數(shù)。
最后需要說(shuō)明的一點(diǎn)就是,虛擬內(nèi)存并不是越大越好。如果設(shè)置為10倍、20倍,那么這是浪費(fèi)。以往內(nèi)存中沒(méi)有這么多的內(nèi)容可以往虛擬內(nèi)存中存放。所以,針對(duì)SQL Server數(shù)據(jù)庫(kù)與Windows服務(wù)器來(lái)說(shuō),4倍于物理內(nèi)存的虛擬內(nèi)存已經(jīng)足夠了。設(shè)置的再大的話,就沒(méi)有多少的實(shí)際意義了。
二、 調(diào)整本地客戶端的任務(wù)優(yōu)先級(jí)。
在數(shù)據(jù)庫(kù)初始化的過(guò)程中,有大部分的任務(wù)需要在本地客戶端上完成。即時(shí)在后續(xù)維護(hù)中,出于某種原因仍然要在本地客戶端上操作。那么什么是本地客戶端呢?其實(shí)本地客戶端就是跟數(shù)據(jù)庫(kù)服務(wù)器部署在同一臺(tái)計(jì)算機(jī)上的客戶端。如我們?cè)趯?dǎo)入期初數(shù)據(jù)的時(shí)候,為了方便會(huì)在本地客戶端上直接進(jìn)行操作。因?yàn)檫@可以節(jié)省數(shù)據(jù)在網(wǎng)絡(luò)上傳輸?shù)臅r(shí)間。
不過(guò)在本地客戶端上進(jìn)行操作的時(shí)候,往往分為前臺(tái)運(yùn)行與后臺(tái)運(yùn)行。操作系統(tǒng)這么設(shè)計(jì)的本意是為了提高遠(yuǎn)程客戶端的執(zhí)行效率。如在遠(yuǎn)程客戶端生成物料需求計(jì)劃的時(shí)候,由于運(yùn)算量比較大,其花費(fèi)的時(shí)間可能比較久,如可能需要20分鐘。為了提高工作效率,對(duì)于類似的作業(yè),應(yīng)用程序可以把這個(gè)運(yùn)算放置在后臺(tái)運(yùn)行。不過(guò)需要注意的是,把某個(gè)作業(yè)放置在后臺(tái)運(yùn)行,并不能夠節(jié)省其運(yùn)行的時(shí)間,而往往由于放置在后臺(tái)的作業(yè)其優(yōu)先級(jí)比較低,往往實(shí)際花費(fèi)的時(shí)間還會(huì)延長(zhǎng),如會(huì)延長(zhǎng)到23分鐘等等。之所以要把這個(gè)長(zhǎng)時(shí)間運(yùn)行的作業(yè)放置在后臺(tái),主要是為了讓用戶不用干等,可以先作其他事情。等到運(yùn)行完成后,系統(tǒng)會(huì)自動(dòng)把相關(guān)的結(jié)果返回給用戶。這在感覺(jué)上是縮短了運(yùn)行的時(shí)間(往往在等待的過(guò)程中時(shí)間過(guò)得特別慢),而實(shí)際上其運(yùn)行的時(shí)間根本沒(méi)有縮短,甚至?xí)L(zhǎng)。
這個(gè)處理策略對(duì)于遠(yuǎn)程客戶端來(lái)說(shuō)確實(shí)有用,至少可以在感覺(jué)上縮短用戶的等待時(shí)間。而且可以讓用戶先進(jìn)行其他的操作。但是如果在本地客戶端上,處理某些作業(yè)的時(shí)候,可能并不希望如此。如在本地客戶度進(jìn)行物料需求計(jì)劃測(cè)試,數(shù)據(jù)庫(kù)管理員希望即時(shí)把這個(gè)計(jì)劃放置在后臺(tái)運(yùn)行,其也能夠與前臺(tái)應(yīng)用程序具有相同的優(yōu)先級(jí),以減少這個(gè)處理時(shí)間。所以,當(dāng)數(shù)據(jù)庫(kù)管理員遇到類似情況時(shí),就需要調(diào)整操作系統(tǒng)的相關(guān)設(shè)置,讓作為在后臺(tái)運(yùn)行的應(yīng)用程序,也能夠與前臺(tái)運(yùn)行的其他應(yīng)用程序具有相同的優(yōu)先級(jí)。
通常情況下,安裝完干凈的SQL Server數(shù)據(jù)庫(kù)時(shí),服務(wù)器任務(wù)調(diào)度設(shè)置為"務(wù)",即前后臺(tái)應(yīng)用程序沒(méi)有優(yōu)先級(jí)的分別。也就是說(shuō),此時(shí)將為前臺(tái)應(yīng)用程序與后臺(tái)應(yīng)用程序提供相等的處理時(shí)間。但是有時(shí)候?yàn)榱思骖欉h(yuǎn)程客戶端,在部署實(shí)例的時(shí)候,會(huì)改變這設(shè)置。如把降低后臺(tái)應(yīng)用程序的優(yōu)先級(jí),讓更多的資源能夠服務(wù)于前臺(tái)應(yīng)用程序。在大部分情況下,這個(gè)設(shè)置是必要的。不過(guò)如果出于某些原因需要在本地客戶端執(zhí)行某些操作的話,則數(shù)據(jù)庫(kù)管理員需要暫時(shí)調(diào)整這個(gè)配置,以節(jié)省某些作業(yè)的運(yùn)行時(shí)間。有時(shí)候甚至可以將服務(wù)器任務(wù)調(diào)度設(shè)置為最大或者應(yīng)用程序,這就可以為前臺(tái)應(yīng)用程序提高最大的處理器時(shí)間。
可見(jiàn),任務(wù)調(diào)度計(jì)劃設(shè)置也沒(méi)有一個(gè)統(tǒng)一的優(yōu)劣標(biāo)準(zhǔn)。主要還是需要看數(shù)據(jù)庫(kù)服務(wù)器到底用來(lái)做什么?為此這也對(duì)數(shù)據(jù)庫(kù)管理員提出了比較高的要求。此時(shí)數(shù)據(jù)庫(kù)管理員必須要理解各種優(yōu)先級(jí)設(shè)置對(duì)于數(shù)據(jù)庫(kù)服務(wù)器性能的影響。然后再根據(jù)當(dāng)時(shí)的實(shí)際應(yīng)用來(lái)合理的調(diào)整任務(wù)級(jí)別的優(yōu)先級(jí),以取得本地客戶端操作的最大性能。
關(guān)鍵詞標(biāo)簽:Windows,數(shù)據(jù)庫(kù)服務(wù)器
相關(guān)閱讀
熱門(mén)文章 windows7虛擬光驅(qū)安裝和使用方法解決應(yīng)用程序正常初始化(0xc0000135)失敗hosts文件位置以及如何修改hosts文件[聲音故障]XP沒(méi)有聲音,丟失Windows Audi
人氣排行 [聲音故障]XP沒(méi)有聲音,丟失Windows Audio服務(wù)(AudioSrv)[警解決Windows 7黑屏的有效方法windows2003中關(guān)于軟路由設(shè)置方法的具體介紹Windows不能在本地計(jì)算機(jī)啟動(dòng)OracleDBConsoleorcl一個(gè)空文件夾刪不掉的解決辦法Windows 7加X(jué)P的局域網(wǎng)搭建與文件共享用Windows命令行實(shí)現(xiàn)自動(dòng)SSH代理Windows提示錯(cuò)誤應(yīng)用程序update.exe