怎樣改善SQL Server數(shù)據(jù)庫(kù)的內(nèi)存管理_Mssql數(shù)據(jù)庫(kù)教程
推薦:解讀VB實(shí)現(xiàn)SQL Server 2000存儲(chǔ)過(guò)程調(diào)用摘要:本文以SQL Server2000存儲(chǔ)過(guò)程為例,探討了存儲(chǔ)過(guò)程的優(yōu)點(diǎn),并以Visual Basic6.0程序設(shè)計(jì)語(yǔ)言給出了調(diào)用存儲(chǔ)過(guò)程的關(guān)鍵代碼。 關(guān)鍵字:數(shù)據(jù)庫(kù);SQL Server2000;存儲(chǔ)過(guò)程;應(yīng)用程序;VB。 存儲(chǔ)過(guò)程 存儲(chǔ)過(guò)程是存儲(chǔ)在服務(wù)器上的一組預(yù)編譯的Transact-SQL語(yǔ)
最近,為了能在數(shù)據(jù)庫(kù)服務(wù)器中運(yùn)行其他應(yīng)用程序,在保持?jǐn)?shù)據(jù)庫(kù)操作系統(tǒng)版本不變的前提下對(duì)數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行了軟、硬件上的升級(jí)。在軟件上,將操作系統(tǒng)從Windows 2000升級(jí)到Windows Server 2003;在硬件上,將服務(wù)器中的內(nèi)存由原來(lái)的512MB增加到1GB(1024MB)。
在升級(jí)后的開(kāi)始幾個(gè)星期之內(nèi),服務(wù)器在使用中表現(xiàn)良好。但是不久后就發(fā)現(xiàn),在服務(wù)器上同時(shí)運(yùn)行的其他應(yīng)用程序卻出現(xiàn)了異常,不時(shí)地報(bào)出內(nèi)存分配不足的警告。經(jīng)過(guò)幾次跟蹤后發(fā)現(xiàn),原來(lái)是SQL Server吞去了大部分內(nèi)存所致。被SQL Server占用的內(nèi)存由升級(jí)前的不到400MB一下子增加到現(xiàn)在的900MB,并且有不斷增長(zhǎng)的趨勢(shì)。
通過(guò)查找原因才知道這是SQL Server 緩沖池的預(yù)期行為。默認(rèn)情況下,在啟動(dòng) SQL Server之后,SQL Server會(huì)根據(jù)操作系統(tǒng)報(bào)告的物理內(nèi)存數(shù)來(lái)動(dòng)態(tài)增大或縮小高速緩沖存儲(chǔ)器的容量。只要可用物理內(nèi)存大小保持在4MB到10MB之間,SQL Server 緩沖池就會(huì)繼續(xù)增大(保留可用物理內(nèi)存在4MB到10MB之間是為了避免操作系統(tǒng)因?yàn)槿鄙賰?nèi)存而頻繁地?fù)Q頁(yè))。如果物理可用內(nèi)存變得較少的時(shí)候,則SQL Server會(huì)將一些內(nèi)存釋放給操作系統(tǒng)。
為了使運(yùn)行在服務(wù)器上的應(yīng)用程序都能達(dá)到比較滿意的效果,同時(shí)也為了能給其他應(yīng)用程序分配足夠的內(nèi)存,需要采取措施限制SQL Server 的內(nèi)存使用量。我們可以通過(guò)設(shè)置SQL Server 數(shù)據(jù)庫(kù)引擎使用的內(nèi)存的上下限來(lái)達(dá)到此目的。其具體步驟是:
1.打開(kāi)企業(yè)管理器,展開(kāi)服務(wù)器組。
2.單擊該服務(wù)器,點(diǎn)擊鼠標(biāo)右鍵,單擊屬性菜單。
3.在彈出的對(duì)話框中單擊內(nèi)存選項(xiàng)卡。
內(nèi)存設(shè)置方法有兩種:
1.設(shè)置min server memory和max server memory 在一個(gè)范圍段內(nèi)。
比如,我們將它設(shè)置成最小0MB,最大255MB。這種方法在為一臺(tái)服務(wù)器中運(yùn)行多個(gè)應(yīng)用程序分配內(nèi)存時(shí)非常有用。
2.設(shè)置 min server memory 和 max server memory 為同一數(shù)值。
比如,可以將它最大和最小值都設(shè)置成255MB。這樣的設(shè)置方法與窗口中的另一個(gè)選項(xiàng)“使用固定的內(nèi)存大小” 相一致。
雖然內(nèi)存最小值和最大值設(shè)置是高級(jí)選項(xiàng),但在設(shè)置完畢之后,最好還是先將SQL Server服務(wù)停止后再重新運(yùn)行,以便SQL Server能更好地對(duì)內(nèi)存進(jìn)行合理安排。
分享:客戶端備份與恢復(fù)MSSQL Server數(shù)據(jù)庫(kù)摘要:本文以SQL SERVER為例,總結(jié)了常用的幾種備份和恢復(fù)數(shù)據(jù)庫(kù)的方法,分析了作業(yè)機(jī)制的原理,并提出了一種以作業(yè)機(jī)制實(shí)現(xiàn)恢復(fù)和備份數(shù)據(jù)庫(kù)的方法。用戶可以不打開(kāi)數(shù)據(jù)庫(kù)管理器,在應(yīng)用程序客戶端就可以方便地實(shí)現(xiàn)數(shù)據(jù)庫(kù)的備份和恢復(fù)。 關(guān)鍵詞: 備份 恢復(fù) 作
- sql 語(yǔ)句練習(xí)與答案
- 深入C++ string.find()函數(shù)的用法總結(jié)
- SQL Server中刪除重復(fù)數(shù)據(jù)的幾個(gè)方法
- sql刪除重復(fù)數(shù)據(jù)的詳細(xì)方法
- SQL SERVER 2000安裝教程圖文詳解
- 使用sql server management studio 2008 無(wú)法查看數(shù)據(jù)庫(kù),提示 無(wú)法為該請(qǐng)求檢索數(shù)據(jù) 錯(cuò)誤916解決方法
- SQLServer日志清空語(yǔ)句(sql2000,sql2005,sql2008)
- Sql Server 2008完全卸載方法(其他版本類似)
- sql server 2008 不允許保存更改,您所做的更改要求刪除并重新創(chuàng)建以下表
- SQL Server 2008 清空刪除日志文件(瞬間日志變幾M)
- Win7系統(tǒng)安裝MySQL5.5.21圖解教程
- 將DataTable作為存儲(chǔ)過(guò)程參數(shù)的用法實(shí)例詳解
Mssql數(shù)據(jù)庫(kù)教程Rss訂閱編程教程搜索
Mssql數(shù)據(jù)庫(kù)教程推薦
- 分享:在存儲(chǔ)過(guò)程中使用另一個(gè)存儲(chǔ)過(guò)程返回的查詢結(jié)果集的方法
- sql中case語(yǔ)句的用法淺談
- 如何使用SQL Server數(shù)據(jù)庫(kù)中查詢累計(jì)值
- sqlserver數(shù)據(jù)庫(kù)出現(xiàn)置疑的解決思路
- 談SQL Server應(yīng)用程序的高級(jí)Sql注入
- 實(shí)例演示left join/right join/inner join
- 如何使用SQL Server代理運(yùn)行CmdExec命令
- SQL Server 數(shù)據(jù)庫(kù)分離與附加(圖文教程)
- 如何解決MySQL 5數(shù)據(jù)庫(kù)連接超時(shí)問(wèn)題
- 解讀4個(gè)編寫(xiě)SQL語(yǔ)句需要注意的常識(shí)
猜你也喜歡看這些
- 淺談SQLite時(shí)間函數(shù)的使用說(shuō)明與總結(jié)分析
- sql語(yǔ)句:SQLServer字段排序(按筆畫(huà),拼音,拼音首字母)
- 關(guān)于MySQL數(shù)據(jù)遷移--data目錄直接替換注意事項(xiàng)的詳解
- MySQL和Access的區(qū)別
- Mysql中“Insert into xxx on duplicate key update”問(wèn)題
- MySQL如何設(shè)置密碼
- MySQL出現(xiàn)大量unauthenticated user
- mysql中text與varchar與char的區(qū)別
- Mysql中的find_in_set的使用方法介紹
- mysql手動(dòng)刪除BINLOG的方法
- 相關(guān)鏈接:
- 教程說(shuō)明:
Mssql數(shù)據(jù)庫(kù)教程-怎樣改善SQL Server數(shù)據(jù)庫(kù)的內(nèi)存管理
。