sql server2005優化

最近在學習優化sql server2005,整理一下。

1、服務器用的win2003 (32位)系統,這個對sql server有很大影響,如果是64位系統,這條就不用看了。32位的系統本來只能識別4GB內存,所以增加了一個功能,在“我的電腦”-屬性 中一般會顯示“物理地址擴展”。這個功能就是讓32位的系統可以讀取4GB以上的內存,但這個也只是讓操作系統自己可以控制更多內存(就是任務管理器裏顯示內存在4GB以上),這個功能是在boot.ini裏啓動參數裏設置的。

因爲操作系統是32位,導致其上運行的應用程序也是32位的,所以雖然操作系統看到了更多的內存,但應用程序自己還是用不了。所以sql server 2005裏內存設置中 有一個“啓用AWE管理內存”的選項,這個選項關閉時,sql server和一般程序一樣要擠在4GB的內存裏運行,sql server 運行佔用內存還是很多的,這樣的運行在大數據量時就很受影響,如果打開AWE,sql server 就會在4GB內點很少的內存100-200MB左右,然後按運行時內存使用上限爲準,直接在內存中佔用相應的空間,這樣就可以讓sql server 使用更多的內存了。

但這個功能有個限制,就是啓用這個功能時,boot.ini中的3GB參數要去掉,兩個功能都是管理內存的分配,相互之間有干擾,具體的解釋,可以看一下微軟的說明。個人推斷,所謂的物理地址擴展,就是在32位能識別的內存範圍建立一個映射表來管理4GB以上那部分內存,所以這個表就要在4GB內存儲並且與擴展內存的大小正比自然就會要求操作系統多留一些內存管理,當然即使是擴展內存,內存空間不是沒有上限,就像64位的操作系統內存也是有上限的。

2、數據庫使用文件和文件組功能。

這個要在設計創建數據庫時就考慮,因爲設置文件組時要指定表所在的文件,如果是成型的系統,這個優化的改動就比較麻煩。

3、根據程序需要設置連接數,關閉不用的連接協議,一般只保留TCP/IP就可以。

 

有時間再繼續補充,也歡迎有經驗的人提供更多的方法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章