農業銀行總行
年以來正式推廣了新版網絡版綜合業務統計信息系統
該系統是基於WindowsNT
平台
采用客戶/服務器模式
以Microsoft SQL Server為基礎建立起來的大型數據庫應用程序
系統界面友好
操作簡便
計算
分析
檢索功能非常強大
為保證農業銀行系統及時進行縱向和橫向業務數據采集
按照不同要求生成統計報表
進行全面業務活動分析提供了強有力的保障
但在這套程序的推廣
維護中筆者發現系統有時運行速度較慢
特別是在Win
客戶端操作時尤為嚴重
經過排除網線連接等硬件可能帶來的影響後上述問題仍然存在
筆者經過仔細摸索
發現系統對硬
軟件的要求較高
為充分發揮設計效能
達到最佳運作效果
需要對計算機硬
軟件系統進行較為完備的性能測試與最佳配置
特別是內存配置的好壞對系統的運行速度具有決定性的作用
下面
筆者就如何優化SQLServer數據庫服務器的內存配置提出一些認識和看法
一
有關內存的基本概念
物理內存與虛擬內存
WindowsNT使用兩類內存
物理內存與虛擬內存
物理內存
作為RAM芯片安裝在計算機內部的存儲器
虛擬內存
用於模擬RAM芯片功能的磁盤(硬盤)空間
其實質是通過將內存中當前沒有使用的部分內容臨時存儲到磁盤上
使系統可以使用到比機器物理內存更多的內存
分頁和分頁文件
WindowsNT系統通過使用磁盤空間使得對內存的需求得到部分緩解
從而使用到比物理內存更多內存的技術就稱為
交換
或分頁
也就是通常所說的虛擬內存技術
通常Windows NT
系統安裝時將在引導驅動器上設置一個大小為
MB的交換(分頁)文件(pagefile
sys)
二
優化Windows NT
系統內存配置
在大多數情況下
為了充分發揮Windows NT
系統效能
內存的作用比起處理器的處理能力更具有影響力
特別是在客戶/服務器模式環境下更是如此
因為通常在這種環境下並不十分強調處理器的能力
相反卻十分注重是否采用足夠的內存來滿足各個客戶的應用需要
此外
為了獲得容錯功能和保護應用程序
保證應用程序高速運行
充分發揮設計功能都需要有足夠多的內存
特別是工業繪圖設計和各種工程應用程序更需要占用大量的內存來進行復雜的計算
物理內存(RAM)方便快速的優點顯而易見
但由於其價格昂貴
也就不可能做到多多益善了
因此通過合理優化內存配置
擴充虛擬內存提高計算機運算速度也就成了一項很重要的應用技術手段
保證Windows NT系統基本內存需求
Windows NT
系統至小應配置
MB內存
MB內存基本夠用
正常情況下保證NT系統有
MB內存就可以了
因為並不是所有的
MB基本內存在任何時候都被同時使用
如果添加一些服務和應用程序
則對內存的需求就會急劇增大
如
(
)添加網絡服務需要
MB內存空間
(
)容錯功能和系統保護功能需要
MB內存(如磁盤鏡像和分條功能)
(
)進行圖形圖象處理需要增加
MB內存空間
(
)安裝VC
VB開發系統需要增加
MB內存空間
另外
如在Windows NT上構建大型數據庫如SYBASE
Microsoft SQL Server等
對內存的需求就更多了
優化內存性能
為了使WindowsNT不至於過分占用較多的內存或者浪費處理器的時間用於換頁
可以采用以下方法優化內存性能
(
)減少顯示顏色的數量
(
)降低顯示分辨率
(
)盡可能不使用或使用位寬度較小的牆紙
(
)關閉不需要的服務程序或驅動程序
盡量不要在服務器上使用其它應用程序
停用服務或驅動程序的操作步驟如下
①確定需要停用的服務或驅動程序的名稱
②從
控制面板
中雙擊
服務
或
設備
圖標
③在列表中選擇想要停用的服務或設備驅動程序的名稱
單擊
停止
按鈕
這時出現確認操作對話框
④選擇
是
確認操作
然後關閉對話框完成設置
優化虛擬內存
在對Windows NT虛擬內存進行設置時需要合理確定各個驅動器分頁文件的
起始大小
和
最大值
兩個參數
它們用於指定分頁文件的起始空間和最大空間
下面對這兩個參數作一些解釋
起始大小
指初始創建該分頁文件時的文件大小
單位為MB
根據缺省設置
這個值被設置為系統中的物理內存的大小
最大值
指出該分頁文件的最大尺寸
單位為MB
(
)分頁文件的設置原則
①分頁文件起始大小應保留缺省設置
一般情況下請不要改動
②分頁文件理想的最大尺寸為系統物理內存尺寸的
倍至
倍
需要說明的是
如果系統工作時不需要大量內存
請選擇靠近下限的值
即用系統物理內存的
倍作為這個尺寸的起始值
如果系統工作時需要大量內存
請選擇靠近上限的值
(
)Windows NT虛擬內存設置步驟
①從
控制面板
中雙擊
系統
圖標
②在
系統特性
對話框中單擊
性能
標簽
③在虛擬內存對話框中單擊
更改
按鈕
這時出現
虛擬內存
對話框
上端的驅動器框逐一列出了 Windows NT所有頁面文件的大小
④在驅動器列表中
選擇需要設置分頁文件的驅動器盤符
在
驅動器頁面文件大小
對話框中列出了
起始大小
和
最大值
兩個參數欄
填入按照上面的原則確定的數值
⑤單擊
設置
確認以上操作
然後依次單擊
確定
按鈕退出各個對話框
完成設置
(
)Win
/
虛擬內存設置
Win
/
虛擬內存設置方法
步驟和原則與Windows NT
的設置大致相同
請參照上面Windows NT的設置
注意事項
(
)合理確定分頁文件的最大值
根據系統需求隨時進行調整
使用過多虛擬內存將導致整個系統處理性能的下降
設置虛擬內存最大值的目的是使用戶不必在WindowsNT的交換文件上消耗過多的磁盤空間
通常情況下如果超過了系統需要的最佳值後
生成交換文件的磁盤空間就被浪費了
(
)盡可能設立專用硬盤配置內存交換區
或將交換空間放到主硬盤的另一個分區
同時應將主硬盤的交換文件大小降至
MB
這樣主硬盤(分區)僅用來放置操作系統和應用程序
就可以減少交換次數
防止頻繁交換耗費大量 CPU時間
(
)虛擬內存技術的確改善了Windows NT系統的性能
但也受到機器硬盤空間大小
硬盤速度
處理器 (CPU)速度的影響
從理想角度出發
要提高計算機的性能就必須減少交換操作的次數
但是沒有一個WindowsNT計算機不發生交換
這就要求計算機要有足夠的物理內存
以保持最少的交換操作
三
優化Microsoft SQL Server數據庫內存配置
內存是影響Microsoft SQL Server系統性能的一個重要因素
SQL Server數據庫安裝時將為具有
MB物理內存的機器缺省配置
MB可用內存
MB物理內存的機器缺省配置
MB可用內存
應在Microsoft SQL Server數據庫安裝後進行內存選項(Memory)設置
最大配置值為
GB
為了確定SQL Server系統最適宜的內存需求
可以從總的物理內存中減去Windows NT
需要的內存以及其它一些內存需求後綜合確定
理想的情況是給SQL Server分配盡可能多的內存
而不產生頁面調度
根據物理內存合理規劃SQL Server可用內存
在大多數的生產環境中
服務器配備的物理內存是
MB~
MB
偶爾也有
MB的
只要配置恰當是完全可以滿足SQL Server的內存需求的
下表是筆者關於SQL Server內存分配的建議規劃
供參考
物理內存 分配給SQL Server 設置值(單位
KB)
MB
MB
MB
MB
MB
~
MB
~
MB
~
MB
~
MB
~
MB
~
MB
~
MB
~
MB
~
MB
~
MB
~
MB
~
以下是SQL Server內存選項(Memory)設置方法
(
)從Microsoft SQL Server程序集中啟動SQL Enterprise Manager
(
)從Server Manager窗口中選擇
Server
菜單選項
(
)在
Server
菜單中選擇
Configurations
選項
(
)在
Server Configuration
對話框中選擇
Configuration
標簽
Configuration窗口顯示配置選項列表
(
)選中
Memory
項目
在
Current
欄填入新值
(
)停止並重新啟動SQLServer服務
使設置生效
合理擴充虛擬內存
增大SQL Server可用內存
當SQL Server系統確實需要擴大可用內存時
應在磁盤空間充足的情況下擴充供虛擬內存
並相應增大 SQL Server可用內存
具體做法是
系統管理員首先擴充服務器的虛擬內存
然後再參考上表增大SQL Server可用內存
關鍵是要根據系統的負載情況綜合決定是否擴充內存
優化配置
使用tempinRAM
SQL Server使用tempdb臨時數據庫作為一些查詢連接操作時排序或創建臨時表的工作空間
將tempdb創建在RAM中可以使系統操作性能有較大提高
而且因為tempdb在每次重啟動服務器時都重建
這樣即使有非正常的關閉也是較為安全的
例如停電故障
要將tempdb創建在RAM中
可以使用sp_configure進行設置
具體用法請參閱有關資料
由於tempdbinRAM使用的內存是由系統從內存體單獨分配的
與SQL Server的內存選項設置的可用內存池是分開的
使用tempdbin RAM將減少整個系統的可用內存
應根據SQL Server和服務器運行情況進行配置
否則就可能適得其反
影響系統性能
另外
適當增加tempdb數據庫空間
即使不使用temp
From:http://tw.wingwit.com/Article/program/SQLServer/201311/22052.html