亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > SQL Server > 正文

[轉]如何降低SQL Server 內存使用率

2024-08-31 00:54:54
字體:
來源:轉載
供稿:網友
[轉]如何降低SQL Server 內存使用率

我的數據庫服務器內存為8G,現在資源管理器顯示內存用到5G,可以肯定是sqlserver數據庫吃內存原因。

MSSQL占用了太多的內存,而且還不斷的增長;或者說已經設置了使用內存,可是它沒有用到那么多,這是怎么一回事兒呢?MSSQL是怎樣使用內存的:

  最大的開銷一般是用于數據緩存,如果內存足夠,它會把用過的數據和覺得你會用到的數據統統扔到內存中,直到內存不足的時候,才把命中率低的數據給清掉。所以一般我們在看statistics io的時候,看到的physics read都是0。

  其次就是查詢的開銷,一般地說,hash join是會帶來比較大的內存開銷的,而merge join和nestedloop的開銷比較小,還有排序和中間表、游標也是會有比較大的開銷的。

  所以用于關聯和排序的列上一般需要有索引。

  再其次就是對執行計劃、系統數據的存儲,這些都是比較小的。

  我們先來看數據緩存對性能的影響,如果系統中沒有其它應用程序來爭奪內存,數據緩存一般是越多越好,甚至有些時候我們會強行把一些數據pin在高速緩存中。但是如果有其它應用程序,雖然在需要的時候MSSQL會釋放內存,但是線程切換、IO等待這些工作也是需要時間的,所以就會造成性能的降低。

方法:可以考慮增加內存,優化數據庫和代碼,設置MSSQL的最大內存使用等等。

max server memory 和min server memory,如何設置(2種)

1.通過SSMS界面中的服務器屬性可以設置2. --通過sp_configure 設置EXEC sp_configure N'min server memory (MB)',N'替換最小值'GORECONFIGUREGOEXEC sp_configure N'max server memory (MB)',N'替換最大值'GORECONFIGUREGO

如果沒有其它應用程序,那么就不要限制MSSQL對內存的使用。

  然后來看查詢的開銷,這個開銷顯然是越低越好,因為我們不能從中得到好處,相反,使用了越多的內存多半意味著查詢速度的降低。所以我們一般要避免中間表和游標的使用,在經常作關聯和排序的列上建立索引。

除了限制SQL使用內存之外,還可以優化數據庫設計,比如沒有必要用char(100)的地方,就用varchar,沒有必要用int的地方就用smallint, tinyint,沒有必要用雙字節nvarchar的地方,就用varchar,這些都能有效減少讀入內存的數據。但如果有很多歷史數據的話,很多人都不會去做的。或者就是優化SQL代碼。

***************************************************************************************************************

合理設置內存讓數據庫與其他程序共存

在SQL Server數據庫中,有min server memory與max server memory兩個內存選項。。

在達到min規定的內存數量之前,數據庫引擎緩沖池是不會釋放它獲取的任何內存。min內存數量為50M。查詢作業執行完畢后,只要沒有達到50M這個值。則數據庫系統不會把沒有的20M內存還給操作系統,而是一直占用著,以方面后 續的作業。

  如果用戶需要調用數據庫系統中的函數或者過程,此時內存的需要量可能會超過規定的最小內存量,如達到80M。數據庫引擎 緩沖池從不將內存分配降低到最小內存所指定的水平下。也就是說,此時數據庫最多會釋放30M的內存,為自己留下50M的內存空間,即使當前其可能只需要用 到40M內存空間即可。當然在抓取內存空間的時候,其也不會為自己分配高于MAX內存所規定的內存空間。

為此如果能夠把數據庫的最低內存設置的比較低的話,則數據庫系統在用完內存話就可以馬上把內存釋放出來,而不會為自 己保留比較大的暫時不同的內存空間。同理,在保障業務需求的情況下把最大內存設置的比較小,則可以為其他應用程序留下比較多的內存空間。

如果一臺服務器上只運行了一個數據庫應用程序,或者說數據庫的應用比較簡單、數據庫內存使用量基本上不會超過最小內存數量的花,則可以采用默認多參數配 置。但是如果在同一臺服務器上部署了比較多的應用程序或者數據庫設計比較復雜,此時就需要對數據庫的最小內存與最大內存進行配置,以實現多個應用程序能夠 實現和平共處。數據庫就需要采用一定的保護措施,需要設置最小內 存與最大內存,來保障自己數據庫正常運行所需要的內存空間。

一般來說,最好把最小內存設置的小一點,而把最大內存的花設置的大一點。如此的話,可以讓數據庫引 擎在管理內存的時候有比較大的靈活性。然后再進行后續監測的數據來進行相應的調整,慢慢的把內存配置調整到最優。

要分析數據庫系統內存的使用大戶,跟其他應用程序的內存使用高峰分流。數據庫中函數、過程、復雜的視圖、備份等作業都會用到比較可觀的內存。如企業如 果在SQL SERVER數據庫上面部署了ERP系統,而系統中有一個“庫存采購”作業,這個需要用到比較復雜的業務邏輯,需要考慮到庫存、安全庫存、包裝數量等等比 較復雜的計算。為此最好能夠把這個作業放到服務器比較空的時候運行,以跟其他應用程序錯開運行。備份作業需要用到比較 多的內存,為此最好能夠把各種應用程序的備份作業錯開來運行。如此的話可以減少應用程序之間內存的占用。

  如果把最小內存與最大內存的值設置為相同,那么會產生什么情況呢?如果把它們設置為相同的值,則一旦分配給數據庫引擎 的內存達到這個值的話,則數據庫引擎將停止為緩沖池動態釋放和獲取內存。也就是說,此時數據庫內存的分配就是固定的,不會根據數據庫引擎的負荷來動態的獲 取或者釋放。顯然對于生成用的服務器來說,這并不是一個很好的配置。但是在一些特殊的應用下,卻可以起到比較不錯的效果。如需要測試數據庫某個作業與內存 之間的關系,那么就有可能需要把它們的值配置為相同。另外如果服務器中只運行了數據庫應用程序,那就有可能需要把這兩個參數設置的比較高,以減少數據庫內 存釋放與獲取時所發生的額外開銷等等。

  另外數據庫運行過程中的某些作業是不受這個最大內存的限制的。如數據庫中的進程可能會得到超過最大內存選項所指定的內 存;數據庫的一些外部組建也可以得到緩沖池以外的內存。不過在大部分情況下,數據庫運行還是受到這個緩沖池內存的限制的。所以說在內存參數設置的時候,最 好能夠留有一定的余地。

=====================================================

Windows2003企業版 + Sql Server2005手工調整數據庫服務器內存總以為Windows2003 能夠合理的使用多余的內存,能夠智能化處理內存,事實非然。我有一臺數據庫服務器,32位,操作系統是Windows2003企業版,4G內存,320G存儲空間,使用SQLSERVER2005 數據庫管理系統,里邊有若干個數據庫,平時主要處理大量的業務外,還設置了一些同步,由于及時優化,CPU 一直保持在5%以下,各項主要指標觀察下來一直正常,如數據庫的緩沖命中率保持在95%以上等,所以平時就以默認安裝的模式運行著,當然是原因一大堆,想想解釋得也合理。于是也及時進行了調整,效果還不錯。這里把調整的步驟講給大家,希望有同樣問題的朋友參考參考:1.打開操作系統啟動時PAE 配置項;步驟:找到系統安裝的引導位置的目錄下找到boot.ini文件,默認是隱藏只讀的,找到 Windows2003 啟動配置,在后面加上空格 /PAE ,保存;重啟示例所示:multi(0)disk(0)rdisk(0)partition(2)/%systemroot%= "WindowsServer 2003 Datacenter Edition " /PAE2.打開組策略,添加數據庫運行所依賴的帳號有權進行鎖定內存;大部分情況下,數據庫運行的帳號都是系統級的帳號,如administrator 或者是 administrators組的帳號,當然也有處于安全考慮的給了一個運行權限很小的帳號,只能運行數據庫;所以必須授權該帳號具有鎖定內存的權限;步驟:開始->運行->gpedit.msc->組策略->計算機設置->windows配置->安全設置 ->本地策略->用戶權限分配->鎖定內存頁->本地安全策略設置->添加->選擇運行的帳號或者組;3.重啟服務器,遠程維護的要查看boot.ini是否正確,切起切起,否則后果可想而知;4.配置數據庫,重啟后操作系統已支持大內存了,但數據庫還是需要配置的;默認都未配置;執行以下命令即可步驟:打開查詢分析器,進行以下操作,這里以3G內存給數據庫使用為例進行操作,這幾條命令分別含義是:打開高級選項,打開鎖定內存,設置最大內存,最好是一起完成;sp_configure 'show advanced options', 1RECONFIGUREGOsp_configure 'awe enabled', 1RECONFIGUREGOsp_configure 'max server memory', 3072RECONFIGUREGO5.重啟數據庫,當配置項手工配置好后,需要重啟數據庫,這時你就發現SQLSERVER2005數據庫占用多大的內存了,再看看數據庫的屬性也改變了,AWE上打了勾,最大內存改為3G了,以前是很大的,忽悠我^-^注意點:1.當操作系統PAE未打開時,配置數據庫是沒有用的,數據庫會提示出錯,告訴你內存鎖定系統當前不支持;2.Boot.ini 文件是隱藏的,只讀的,先修改屬性后再操作;3.數據庫重啟前最好先備份,防患于未然;4.不知是操作系統問題,還是盜版的問題,我的SQLSERVER2005在進程任務管理器只有180M,經過和朋友確認,才知是顯示錯誤,其實也不知是 錯誤還是就是這樣的,我想有一種可能,那就是系統把3G劃給數據庫使用后,自己只有1G,他只知道自己分配的那一塊給數據庫系統180M吧;5.數據庫的內存設置有一個合理限度,根據服務器業務多少確定,但不能超過物理內存,我覺得至少得留500M給系統吧,另外如果系統中還有其他的服務在使用也要考慮進去,否則系統內存不足,引起磁盤頁面交換頻繁,反而使性能有所下降。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品天天狠天天看| 日韩有码片在线观看| 中文字幕日本精品| 欧美xxxx18性欧美| 欧美日韩亚洲成人| 久久视频免费观看| 国产成人在线播放| 国产中文日韩欧美| 久久亚洲精品一区| 日韩成人性视频| 国产在线拍偷自揄拍精品| 国产精品高潮呻吟久久av黑人| 亚洲成人网久久久| 亚洲第一免费网站| 国自在线精品视频| 国产精品999| 国产在线视频一区| 国产在线视频一区| 国产精品久久久久久av福利| 一区二区三区久久精品| 国产精品香蕉国产| 国产主播喷水一区二区| 人人澡人人澡人人看欧美| 日韩视频在线免费| www.欧美精品| 91高清免费视频| 欧美亚洲视频在线观看| 国产一区二区三区中文| 国产精品九九久久久久久久| 亚洲精品视频中文字幕| 精品久久香蕉国产线看观看亚洲| 色噜噜狠狠色综合网图区| 亚洲一品av免费观看| 久久综合色影院| 日韩精品在线观看网站| 欧美激情久久久久| 欧美精品一本久久男人的天堂| 欧美日韩国产999| 91丨九色丨国产在线| 欧美激情中文字幕在线| 亚洲新中文字幕| 亚洲在线视频福利| 日韩欧美大尺度| 日韩美女毛茸茸| 亚洲高清av在线| 日韩有码在线电影| 国产激情久久久久| 欧美中文字幕在线观看| 久久久亚洲天堂| 日本国产一区二区三区| 久久久久久久久久久免费精品| 久久99精品久久久久久青青91| 夜夜嗨av色综合久久久综合网| 中文字幕视频一区二区在线有码| 国产精品扒开腿做爽爽爽视频| 97香蕉超级碰碰久久免费的优势| 久久精品电影网站| 亚洲成人av在线| 国产精品v日韩精品| 成人av在线亚洲| 日韩在线免费观看视频| 黄网动漫久久久| 亚洲国产精品一区二区久| 91久久精品久久国产性色也91| 欧美视频一区二区三区…| 日韩中文av在线| 91热福利电影| 色悠久久久久综合先锋影音下载| 国产精品久久久久久久久久99| 欧美国产视频一区二区| 欧美激情精品久久久久久蜜臀| 91理论片午午论夜理片久久| 亚洲欧美日韩久久久久久| 2018国产精品视频| 丝袜美腿亚洲一区二区| 日韩美女毛茸茸| 亚洲欧美一区二区三区久久| 欧美成人亚洲成人| 中文欧美在线视频| 久久精品视频在线观看| 精品久久久久久久久久ntr影视| 国外成人免费在线播放| 久久久久久国产| 精品福利一区二区| 午夜精品国产精品大乳美女| 一本大道香蕉久在线播放29| 国内免费久久久久久久久久久| 亚洲伦理中文字幕| 日韩精品福利在线| 亚洲人成在线免费观看| 亚洲a成v人在线观看| 亚洲女人天堂色在线7777| 国产精品久久久久久久久久| 亚洲欧美一区二区三区情侣bbw| 国产精品高清在线观看| 欧美激情精品久久久久久| 国产午夜一区二区| 国产一区二区丝袜| 国产一区av在线| 2021久久精品国产99国产精品| 亚洲福利影片在线| 欧美成人免费小视频| 久久香蕉精品香蕉| 欧美人与性动交a欧美精品| xxxx性欧美| 国产99久久精品一区二区永久免费| 欧美富婆性猛交| 亚洲综合一区二区不卡| 91精品久久久久久久久久久| 91久久久久久国产精品| 狠狠色香婷婷久久亚洲精品| 国产日韩欧美中文| 亚洲国产日韩一区| 九色精品免费永久在线| 欧美日韩电影在线观看| 国产精品电影网| 中文字幕一区电影| 国产精品久久久亚洲| 国产精品一区二区久久久久| 欧美大片欧美激情性色a∨久久| 日韩视频欧美视频| 亚洲第一页中文字幕| 国产精品综合网站| 亚洲欧洲日韩国产| 精品久久久中文| 欧美色视频日本高清在线观看| 国产小视频91| 欧美激情亚洲国产| 97在线观看视频国产| 高清一区二区三区四区五区| 97激碰免费视频| 国产精品一区二区久久久久| 亚洲国产精品成人一区二区| 欧美第一页在线| 日韩成人av网| 国内伊人久久久久久网站视频| 欧美一级高清免费| 丝袜美腿亚洲一区二区| 欧美激情成人在线视频| 亚洲精品视频在线观看视频| 欧美日韩电影在线观看| 欧美性生交大片免网| 亚洲日本中文字幕免费在线不卡| 久久久国产精品一区| 91热福利电影| 久久精品欧美视频| 久久久女人电视剧免费播放下载| 日韩在线视频网站| 国产精品极品美女粉嫩高清在线| 国产精品一区二区久久| 亚洲高清福利视频| 日韩在线中文字幕| 国产精品国产三级国产专播精品人| 国产精品视频免费观看www| 亚洲综合中文字幕在线| 久久综合久久美利坚合众国| 国产精品三级网站| 国产精品亚洲第一区| 亚洲精品久久久久久久久久久久| 亚洲国产精品成人av| 国产成人精品av在线| 日韩av第一页| 欧美剧在线观看| 欧美一区二区三区图|