一、 總體方案
故障轉移集羣技術與鏡像技術結合,在主體數據庫上實現雙機集羣,鏡像數據庫不在集羣內,是一臺單獨的數據庫服務器。
在配置鏡像數據庫時,選擇鏡像運行模式爲“高性能模式會話”,此模式下:如果羣集故障轉移到另一節點,在鏡像會話中,故障轉移羣集實例將繼續作爲主體服務器。如果整個羣集出現問題,則可以將服務強制到鏡像服務器上。
二、 關於鏡像和集羣
通常,當鏡像與羣集一起使用時,主體服務器與鏡像服務器都駐留在羣集上,其中,主體服務器在一個羣集的故障轉移羣集實例中運行,鏡像服務器在另一個羣集的故障轉移羣集實例中運行。不過,您可以建立一個鏡像會話,其中,一個夥伴駐留在一個羣集的故障轉移羣集實例中,另一個夥伴駐留在一個單獨的非羣集的計算機中。
參考《SQL Server 2008數據庫鏡像+故障轉移集羣》
三、 系統準備
1、建立Windows Server 2008 故障轉移集羣
參看《配置Windows Server2008故障轉移集羣》
2、給各節點添加共享存儲(本例使用windows Storage Server配置iSCSI存儲)
參看《使用Windows Storage Server 2008給hype-v添加iSCSI盤》
3、給集羣添加網絡磁盤(分佈式事物協調器需要一塊磁盤、SQL需要一個磁盤)
A、打開故障轉移集羣
B、點擊右側“存儲”項。選擇右側的“添加磁盤”功能
C、將節點中新添加的iSCSI存儲添加到集羣存儲,並修改磁盤名稱爲SQL
4、添加分佈式事務處理的集羣化
A、打開故障轉移集羣管理器,點擊配置服務或應用程序
B、選擇添加“分佈式事物協調器”進行添加
C、設置MSDTC名稱、IP地址、存儲
4、在Windows Server 2008 R2上直接運行 SQL Server 2008的安裝程序,在安裝進程的最後會報錯,“requirekerberos的值爲1,並非預期值”,經過查找KB得知,此種情況需要安裝SQL Server 2008的SP1補丁。於是採用集成安裝的方式。參見:http://msdn.microsoft.com/zh-cn/library/dd638062.aspx.
集成安裝的準備如下:
A、將SQL Server 2008 ISO內的安裝文件複製到c:/SQLServer2008-FullSP1
B、下載SP1補丁包 :
http://www.microsoft.com/downloads/details.aspx?FamilyID=66ab3dbb-bf3e-4f46-9559-ccc6a4f9dc19
c、 提取補丁包內的文件:
命令行下運行:SQLServer2008SP1-KB968369-x64-CHS.exe /x:c:/PCU,將補丁中的文件釋放到C:/PCU目錄下
5、其他環境要求參見《SQL Server 2008 數據庫鏡像部署實例之一》
四、 集成安裝SQL server 2008
注意:在準備工作中,在那個節點上添加的共享磁盤,就需要在那個節點上安裝SQL Server集羣。如圖示:SQL共享磁盤的所有者爲Hytest02,所以在Hytest02上,運行安裝文件。
在命令行下定位到安裝目錄C:/SQLServer2008_FullSP1.
敲入命令:setup.exe /PCUSource=c:/PCU
/PCUSource 制定安裝進程所集成補丁包的位置,可以是網絡路徑,用於部署多臺數據庫
1、在彈出的安裝界面中,選擇新的SQL Server 故障轉移集羣
2、通過安裝檢測
3、點擊安裝,安裝支持文件
4、選擇要安裝SQL功能,截圖中的實例已經安裝了SQL Server,所以只選擇數據庫引擎服務
5、創建實例名爲SQL2008的數據庫,並填寫集SQL羣網絡名稱爲Csql
6、選擇創建SQL Server資源組,名稱爲SQL Server(SQL2008)
7、選擇集羣可用的SQL作爲集羣磁盤,次磁盤不用添加到集羣共享卷中,作爲網絡磁盤,只要添加到集羣中,並在系統中可見即可。正在被使用的磁盤不能選擇
8、指定集羣的網絡配置
9、配置集羣安全策略,本例爲了方便都是用域管理組。但是推薦在域內分別建立數據庫引擎組、和SQL Server代理組。例如在域內建立SQLadmin用戶、SQLAgent組、SQLEngine組,SQl隸屬於這兩個組,並且將sqladmin添加到個節點本地管理員組中
10、指定SQL服務賬戶
11、使用混合身份驗證、配置數據庫存儲路徑爲之前添加的共享磁盤SQL“I:/SQLDarta”
12、檢查通過,進行安裝
13、 安裝過程有點漫長,等待安裝完成
14、打開故障轉移集羣管理器,我們可以看見SQL集羣應用的一個節點已經存在了。
至此,SQL Server 集羣中的一個節點建立完成,下一篇文章中會介紹如何建立另一個節點。
五、參考文章