SQL Server安装计划
包括從排序規則
和命名實例
到日志和數?
據文件的分離。
SQL Server要 安 裝 在 個 群 集 中 嗎 ?
可以安裝到存儲區域網絡(Storage Area
Networks, SAN)或者
網絡附加存儲(Network Attached Storage,NAS)嗎 ?
是否考慮虛擬化技
術?盡管安裝向導會要求用戶回答一些關于“如何”安裝SQL Server的問題,但在啟動向 導前,您應該知道給出這些答案的理由(即為什么給出這樣的答案)。
升 級 安 裝 有 SQL Server 2008的服務器上的幾乎任何硬件配置都能夠提升性能。但在 同等條件下,增 加 RAM通常會對性能產生最大的影響。處理器主頻過低或者磁盤系統運
行過慢,都將會和RAM不足一樣導致很多的性能問題,只 是 RAM限制會使得處理器和
磁盤的問題變得更加嚴重。
要 優 化 SQL Server 2 0 0 8 ,需要優化4 個主要的子系統,包括處理器、內存、存儲器和 網絡子系統。
DBA對網絡子系統具有最少的控制權,但有時后者會產生最大
的影響,這取決于支持的應用程序和用戶數。應與網絡管理員和工程師協作,為用戶的并
發數據庫訪問制定一個策略。
SQL Server在編譯和執行査詢計劃的過程中會頻繁使用處理器。 即使服務器有一個非常快速的磁盤陣列和足夠的RAM,但如果它有一個主頻明顯過低的處
理器,那一切都是徒勞的。
SQL Server非常善于運用多個處理器來 執行并行操作,添加一個處理器往往會比升級單一的處理器獲得更大的收益。但是,如果
你的許可是每處理器方式,那么添加額外的處理器的成本可能就會過于昂貴。
提示:
在編寫本書時,Microsoft正考慮允許在一個處理器許可下使用多個邏 輯 處 理 器 。這 樣 就可以購買一個4 核 C PU ,從而通過購買一個處理器許可為SQL Server提 供 4 個 CPU。 例如,如果希望購買一個有兩個4 核處理器的新服務器,那只需購買兩個處理器許可,就
可以利用所有8 個內核。
?
SQL Server非 常 “喜歡”內存。喜歡和應用程序搶內存,它試圖把
盡可能多的數據放在內存中以便能夠隨時處理。它還試圖盡可能長時間地在RAM中保持
數據。
SQL Server為各種數據庫操作創建和維持著不同的內存池。例如,有用于存儲來自磁 盤的數據頁的緩沖區緩存;用來存儲已編譯存儲過程、觸發器、函數、視圖和査詢計劃的
過程緩存;甚至用于事務日志操作的日志緩存。
Microsoft對 32位 和 64位版本建議的RAM人小略尚于2GB。盡 管 Microsoft在發布
推薦配置時考慮了操作系統開銷,似是考慮到RAM成本相對較低,我一般還是建議其大
小要高于操作系統要求。例如,如果Windows Server 2008建議采用2GB的 RAM ,那么為
了優化性能,我會建議采用4GB的 RAM。
?
最理想的SQL Server安裝可能如圖2-1所示
?
注意,應用程序被安裝在一個與操作系統分離的?組冋轉軸(Spindle)中。這減少了對 磁盤資源的爭奪,并使得應用程序運行得更有效率。要注意“冋轉軸”這個術語。它比“驅
動器”或 “磁盤”更適合,因為沒有對它做出其他解釋的空間。物理磁盤驅動器有一個回
轉軸,可將其看作陀螺的中心。當然,沒有轉盤的固態磁盤的容量和數量的增加(以及成本
的降低)可能最終會使“冋轉軸”一詞淘汰。不過目前還是要繼續使用此術語。在圖2-1中,
對于操作系統來說,在 RAID 1陣列上駐留日志文件的兩個回轉軸就像是單個驅動器,而
實際上則有兩個物理磁盤或回轉軸。
應用程序存在于一組獨立的冋轉軸上,而數據文件和日志文件則存在于另一個組上。
這樣做是為了最大限度地提髙效率、容錯性和可恢復性。把操作系統、應用程序和數據庫
都放在同一回轉軸上就像是把所有的雞蛋放在同一個籃子里。如果籃子掉在地t , 就會打 碎所有的雞蛋。同樣,如果回轉軸出錯了,您將失去操作系統、應用程序和數據庫。在這
種情況下,所需的恢復時間將增至3倍。即使服務器不會出現災難性的故障,磁盤子系統
上的資源競爭也會導致性能嚴重下降。
把數據庫文件與事務日志文件分離也可幫助改進恢復能力。如果數據庫文件被破壞或
損壞,可以使用最近的備份來恢復它,然后可以使用現有的事務日志恢復自上次備份以來
的全部事務。同樣,如果事務日志丟失,我們可以用數據庫數據重新創建它,而不會丟失
太多的數據。如果數據文件和□志文件在同一個回轉軸上,那么回轉軸災難性的故障將導
致自上次備份以來的所有數據丟失。
分離SQL Server的不同組件是一方面。在選擇磁盤系統時,還有必要知道什么類型的 磁盤最適合數據庫的每個部分。注意在圖2-1中,操作系統安裝在RAID 1 陣列上。SQL
Server應用程序和數據庫日志文件也是如此,而數據文件則放在一個條帶磁盤陣列上。可 以將所有的SQL資源放在一個或多個RAID10或 RAH)5陣列中,許多組織也正是這樣做
的。不過對事務日志而言,RAID1配置比RAID 5 更為合適。將事務日志放在條帶磁盤陣
列上實際上會降低SQL Server的性能,因為RAID 5 陣列本身對寫性能有影響,而 SQL Server將串行化的數據寫入日志的方式也會影響寫性能。日志文件人多是被寫入的,這意 味著對于性能而言,RAID1(或者如果您有更多的預算,可以采用RAID10)是最好的選擇。
RAID 1或 RAID 10更好的另外一個原因是,事務日志是連續的、串行的,而不像數據文
件那樣是并行的。
每個事務在寫入內存之前都先寫入事務日志,這使得事務日志可能成為性能瓶頸。快
速陣列有助于防止這一情況。
?
2 .存儲區域網絡(SAN)
SAN 一般經由網絡(通常通過光纖通道或iSCSI)傳 輸 SCSI(Small Computer Systems
Interface,小型計算機系統接口)塊命令,取代了直接附加存儲陣列采用的SCSI連接。SAN 解決方案非常適合SQLServer數據庫,因為數據庫應用程序希望的是對數據進行塊訪問, 這在采用NAS時并不容易實現。利用SAN軟件,可以使用SAN上的存儲空間創建多個卷
并將其提供給服務器,如圖2-2所示。
3 . 網絡附加存儲(NAS)
NAS網絡接口通常是千兆以太網或快速以太網,但其存儲類型是基于文件的,并使用
傳統的文件共享協議。卷并沒有提供給使用NAS的服務器;相反,文件訪問是通過通用命
名約定(Universal Naming Convention,UNC)共享實現的,如圖2-3所不。基于文件的訪問
會極大地降低SQL Server的性能,所以應避免使用NAS存儲。在默認情況下,不能通過 UNC定位創建數據庫,但這種情況是可以改變的。然而,如果數據庫被用于應對任何繁重
的 I/O情況,你會發現NAS將無法作出合適的響應。
?
4 .本地附加磁盤陣列
對于髙速網絡中多個服務器之間的存儲資源共享總是有許多選擇,但有些機構(因為各
種原因)選擇將木地附加存儲應用到他們的數據庫實現中(如圖2?4所示)。在現實中,本地
附加磁盤陣列和SAN的唯一區別是,在本地陣列上創建的卷只有附加該陣列的服務器才可
以訪問,而 SAN控制器可以優化數據傳輸。本地陣列通常是通過髙速SCSI電纜或光纖通
道 連 接 的 。
?
?
2 .1 .5 虛擬化的考慮事項
SQL Server 2008是在鹿擬環 境 巾 得 到 支 持 的 第 ?個 SQL Server版本;不過,還是有一
些 限制。Microsoft將只支 持 在 Windows Server 2008的 Hyper-V環 境 中 安 裝 的 SQL Server,
不支持虛擬機的群集。由于虛擬化技術不斷改進,它對于那呰希望合并硬件或利用虛擬化
恢復和可移植選項的公司變得越來越冇吸引力。我的體驗是,在虛擬環境中運行SQL Server 的最大瓶頸在于I/O性能。對 此 ,我 強烈建議對數據庫和事務日志使用SAN存儲,這樣可
避免在虛擬硬盤文件中存儲數據庫信息。
?
轉載于:https://www.cnblogs.com/zhouwansheng/p/9257055.html
總結
以上是生活随笔為你收集整理的SQL Server安装计划的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 日本汽车行业再曝丑闻!二手车公司故意砸车
- 下一篇: 专访王兴军:3年攻克光子芯片“大脑” 打