基于Win2008 R2的WSFC實(shí)現(xiàn) SQL Server 2012高可用性組(AlwaysOn Group)
兩年前的《SQL Server 2008 R2數(shù)據(jù)庫(kù)鏡像部署》,今天“再續(xù)前緣”——
微軟新一代數(shù)據(jù)庫(kù)產(chǎn)品SQL Server 2012已經(jīng)面世一段時(shí)間了,不管從功能上講還是性能上的體現(xiàn),較之其早期產(chǎn)品都有了很大提升。特別是其引入高可用性組(AlwaysOn Group, AG)這一概念和功能,大大增強(qiáng)和提高了SQL Server的可用性,在之前的鏡像數(shù)據(jù)庫(kù)的基礎(chǔ)上有了質(zhì)的變化。
SQL Server 2012高可用性組在實(shí)現(xiàn)過(guò)程中較之早起的SQL Server故障轉(zhuǎn)移群集來(lái)講,不依賴特別提供共享存儲(chǔ)磁盤陣列,每個(gè)節(jié)點(diǎn)獨(dú)立存儲(chǔ)一份數(shù)據(jù)庫(kù)的副本。其較之早起的鏡像數(shù)據(jù)庫(kù)來(lái)講,提供多節(jié)點(diǎn)高可用,并且針對(duì)數(shù)據(jù)庫(kù)輔助節(jié)點(diǎn)副本可讀;此外,在當(dāng)前可讀節(jié)點(diǎn)出現(xiàn)故障時(shí),能通過(guò)AG自身的機(jī)制保證數(shù)據(jù)庫(kù)正常訪問,而不需要像之前的鏡像數(shù)據(jù)庫(kù)一樣,需要通過(guò)訪問端來(lái)進(jìn)行切換。
因此,以下將對(duì)SQL Server 2012高可用性組的實(shí)現(xiàn)進(jìn)行詳細(xì)介紹。
一、具體的環(huán)境如下
在Windows域中,部署3臺(tái)成員服務(wù)器用作SQL Server服務(wù)器,因?yàn)镾QL Server 2012的高可用性組需要Windows的群集服務(wù)支持,所以必須預(yù)先在這些成員服務(wù)器上實(shí)現(xiàn)WSFC。服務(wù)器的操作系統(tǒng)均為Windows Server 2008 R2,因此其WSFC的仲裁配置有多數(shù)(奇數(shù))節(jié)點(diǎn)、節(jié)點(diǎn)(偶數(shù))和磁盤多數(shù)、多數(shù)節(jié)點(diǎn)(偶數(shù))和文件共享、非多數(shù):僅磁盤等4種。在此,為了體現(xiàn)SQL Server AG無(wú)需要各節(jié)點(diǎn)共享存儲(chǔ)設(shè)備這一特性,準(zhǔn)備使用3個(gè)節(jié)點(diǎn)實(shí)現(xiàn)。由于是奇數(shù),所以選擇多數(shù)節(jié)點(diǎn)仲裁配置。雖然這種仲裁配置不是被SQL Server 2012 AG推薦的,但是并不影響AG的實(shí)現(xiàn)和使用。
另外,由于本文著重講述SQL Server 2012 AG的實(shí)現(xiàn),所以對(duì)于服務(wù)器基本配置和網(wǎng)絡(luò)設(shè)置,以及Windows活動(dòng)目錄和域的實(shí)現(xiàn)在此略去。
二、實(shí)現(xiàn)SQL Server 2012高可用性組必須的WSFC環(huán)境
首先在每臺(tái)成員服務(wù)器上安裝并配置WSFC,以配置SQL03為例:
1、安裝WSFC群集組件
1)打開服務(wù)器管理器,選擇“功能”,在右邊窗口中點(diǎn)擊“添加功能”。
2)在添加功能向?qū)е校催x“故障轉(zhuǎn)移群集”,點(diǎn)擊“下一步”。
3)在“確認(rèn)安裝選擇”頁(yè)面中,點(diǎn)擊“安裝”,進(jìn)行安裝操作。
4)完成并關(guān)閉“故障轉(zhuǎn)移群集”的安裝。
2、配置WSFC
為所有節(jié)點(diǎn)均安裝完“故障轉(zhuǎn)移群集”服務(wù)后,在任意節(jié)點(diǎn)服務(wù)器的“服務(wù)器管理器”中展開“故障轉(zhuǎn)移群集管理器”對(duì)WSFC進(jìn)行配置。
1)通過(guò)“故障轉(zhuǎn)移群集管理器”窗口點(diǎn)擊“創(chuàng)建一個(gè)群集”打開“創(chuàng)建群集向?qū)А?/P>
2)在“開始之前”頁(yè)中,點(diǎn)擊“下一步”。
3)添加所有服務(wù)器節(jié)點(diǎn),即將環(huán)境中的3臺(tái)成員服務(wù)器添加為群集節(jié)點(diǎn)服務(wù)器。點(diǎn)擊“下一步”。
4)在“驗(yàn)證警告”頁(yè)面中,如果需要對(duì)基本環(huán)境(包括硬件)進(jìn)行WSFC需求驗(yàn)證,可以選擇“是”。在本示例中由于不必需進(jìn)行驗(yàn)證,所以選擇“否”。點(diǎn)擊“下一步”。
5)定義“用于管理群集的訪問點(diǎn)”,為群集進(jìn)行名,并指定群集IP地址。點(diǎn)擊“下一步”。
6)確認(rèn)之前配置信息,若無(wú)誤,點(diǎn)擊“下一步”,開始群集創(chuàng)建。
7)完成群集創(chuàng)建,點(diǎn)擊“完成”關(guān)閉向?qū)А?/P>
8)在“故障轉(zhuǎn)移群集管理器”會(huì)顯示成功創(chuàng)建的群集,展開其“節(jié)點(diǎn)”,顯示現(xiàn)有節(jié)點(diǎn)情況。
9)右擊群集節(jié)點(diǎn),在上下文菜單中點(diǎn)擊“更多操作”,在擴(kuò)展菜單中選擇“配置群集仲裁設(shè)置”為該群集配置仲裁。
10)在“開始之前”頁(yè)面中點(diǎn)擊“下一步”。
11)根據(jù)此前的設(shè)計(jì),由于是奇數(shù)節(jié)點(diǎn),并且沒有共享磁盤存儲(chǔ)和共享文件夾存在,所以可以選擇“多數(shù)節(jié)點(diǎn)”,點(diǎn)擊“下一步”。
詳細(xì)請(qǐng)參考:http://technet.microsoft.com/zh-cn/library/cc731739.aspx
12)在“確認(rèn)”頁(yè)面中,點(diǎn)擊“下一步”。
13)完成WSFC的仲裁配置。
至此,為SQL Server 2012 AG準(zhǔn)備的WSFC環(huán)境已經(jīng)完成。
三、為各節(jié)點(diǎn)服務(wù)器安裝并配置SQL Server 2012,以SQL03為例進(jìn)行如下操作。
1、安裝SQL Server 2012
1)在節(jié)點(diǎn)服務(wù)器上,插入SQL Server 2012安裝介質(zhì)。運(yùn)行“SQL Server安裝中心”,選擇“安裝”,點(diǎn)擊“全新SQL Server獨(dú)立安裝或向現(xiàn)有安裝添加功能”。
注意:這里不要選擇“新的SQL Server故障轉(zhuǎn)移群集安裝”,如果是故障轉(zhuǎn)移群集安裝的話最終將實(shí)現(xiàn)的是早起的SQL數(shù)據(jù)庫(kù)群集,并且需要共享數(shù)據(jù)存儲(chǔ)磁盤整列,導(dǎo)致所有SQL節(jié)點(diǎn)共享同一個(gè)數(shù)據(jù)存儲(chǔ)副本。
2)使用安裝程序支持規(guī)則驗(yàn)證是否通過(guò)。
3)指定產(chǎn)品密鑰,或選擇Evaluation版本。
4)接受許可協(xié)議
5)運(yùn)行檢查“安裝程序支持規(guī)則”,驗(yàn)證SQL Server 2012運(yùn)行環(huán)境是否符合要求。
與之前版本相同,需要對(duì)SQL Server必要的端口打開Windows防火墻的入站規(guī)則,比如TCP- 1433端口等。
特別注意:由于AG默認(rèn)需要用到TCP-5022端口,所以該端口務(wù)必保證在Windows防火墻中開啟,允許其入站訪問。
6)設(shè)置SQL Server 2012服務(wù)器角色為“具有默認(rèn)值的所有功能”,點(diǎn)擊“下一步”。
7)在“功能選擇”列表中選擇實(shí)際所需功能,在此,為了簡(jiǎn)便不再進(jìn)行自定義。直接使用默認(rèn)選中組件。并且,需要指定相應(yīng)的“共享功能目錄”,即SQL Server的安裝位置。
8)再次檢查安裝規(guī)則是否能正常執(zhí)行通過(guò)。
9)選擇并指定實(shí)例名,在此使用默認(rèn)實(shí)例來(lái)進(jìn)行示范,并且指定“實(shí)例根目錄”。
10)檢查磁盤空間要求是否達(dá)到SQL Server 2012的安裝需求,點(diǎn)擊“下一步”。
11)指定“服務(wù)賬戶”和“排序規(guī)則”,在此選擇默認(rèn)設(shè)置。如果需要在完成安裝后進(jìn)行自定義配置,點(diǎn)擊“下一步”。
12)在“數(shù)據(jù)庫(kù)引擎配置”頁(yè)面中,指定服務(wù)器配置身份驗(yàn)證為默認(rèn)的“Windows身份驗(yàn)證模式”,“添加當(dāng)前用戶”為SQL Server的管理員,若有需要可進(jìn)行響應(yīng)的自定義配置。此外還可在“數(shù)據(jù)目錄”選項(xiàng)卡中指定相應(yīng)該實(shí)例默認(rèn)的數(shù)據(jù)庫(kù)文件存儲(chǔ)路徑。點(diǎn)擊“下一步”。
13)在“Analysis Services配置”頁(yè)面進(jìn)行和“數(shù)據(jù)庫(kù)引擎配置”頁(yè)面中類似的配置。點(diǎn)擊“下一步”。
14)在“Reporting Services配置”頁(yè)面中,選擇默認(rèn)設(shè)置,點(diǎn)擊“下一步”。
15)“添加當(dāng)前用戶”為“分布式重播控制器”的管理員。點(diǎn)擊“下一步”。
16)為“分布式重播客戶端”指定相應(yīng)控制器和數(shù)據(jù)庫(kù)目錄。在此,采用默認(rèn)配置,控制器名稱可不填寫。點(diǎn)擊“下一步”。
注意:以上第13-16步根據(jù)第7步中所選功能不同,配置情況有所差異。
17)是否發(fā)送錯(cuò)誤報(bào)告頁(yè)面中可選擇是否將錯(cuò)誤報(bào)告發(fā)送給微軟。
18)在進(jìn)行安裝前,執(zhí)行最后一次“安裝配置規(guī)則”檢查,確認(rèn)是否符合安裝需求。
19)在“準(zhǔn)備安裝”頁(yè)面中,確認(rèn)之前進(jìn)行的各種參數(shù)配置是否正確,如果無(wú)誤,點(diǎn)擊“安裝”,啟動(dòng)安裝進(jìn)程。
20)安裝完成后,得到成功完成的頁(yè)面。如果在該頁(yè)面中顯示所有功能均為綠色對(duì)勾,那么證明SQL Server 2012安裝無(wú)誤。
21)可能在某些環(huán)境中安裝,會(huì)收到如下提示,只需重啟服務(wù)器操作系統(tǒng)即可。
2、為高可用性組配置SQL Server 2012數(shù)據(jù)庫(kù)引擎服務(wù)。
1)在“開始”菜單中點(diǎn)擊“所有程序”-“Microsoft SQL Server 2012”-“配置工具”,打開“SQL Server配置管理器”。
2)在控制臺(tái)中點(diǎn)擊“SQL Server服務(wù)”節(jié)點(diǎn),在右邊窗口中右擊“SQL Server (MSSQLSERVER)”,在上下文菜單中選擇“屬性”。
3)在彈出窗口中選擇“AlwaysOn 高可用性”選項(xiàng)卡中勾選“啟用AlwaysOn 可用性組”。點(diǎn)擊“確認(rèn)”。
4)在彈出警告對(duì)話框中提示該修改需要重啟SQL Server數(shù)據(jù)庫(kù)引擎服務(wù)才能生效,點(diǎn)擊“確定”。
5)再次右擊“SQL Server (MSSQLSERVER)”,在上下文菜單中選擇“重新啟動(dòng)”,對(duì)數(shù)據(jù)庫(kù)引擎執(zhí)行重啟操作。
6)為了避免在實(shí)現(xiàn)AlwaysOn Group時(shí)帶來(lái)復(fù)雜的權(quán)限設(shè)置,建議將相關(guān)的SQL服務(wù)(如:SQL Server數(shù)據(jù)庫(kù)引擎服務(wù))啟動(dòng)登錄身份由默認(rèn)的“內(nèi)置賬戶”改為指定的域賬戶。
7)建議為該域賬戶授予各節(jié)點(diǎn)SQL Server登錄權(quán)限,并將各節(jié)點(diǎn)服務(wù)器賬戶指派為SQL Server登錄賬戶。
以上步驟在SQL01/02上均進(jìn)行相同的操作即可。
四、創(chuàng)建配置高可用性組
高可用性組的創(chuàng)建操作可以有三種方式:向?qū)Х绞?、?duì)話框方式和腳本方式,在此以向?qū)Х绞絊QL03上創(chuàng)建的DB01作為主數(shù)據(jù)庫(kù)為例進(jìn)行介紹。
1、為高可用性組創(chuàng)建配置數(shù)據(jù)庫(kù)
要使用向?qū)?chuàng)建高可用性組,必須要有符合條件的數(shù)據(jù)庫(kù)存在,才能進(jìn)行相關(guān)的操作。那么數(shù)據(jù)庫(kù)要符合怎樣的條件才能滿足條件呢?
1)主數(shù)據(jù)庫(kù)的恢復(fù)模式必須是“完整”恢復(fù)模式。
2)主數(shù)據(jù)庫(kù)已進(jìn)行了一次完整備份。
3)需要一個(gè)共享路徑提供給備份包存儲(chǔ),并允許所有節(jié)點(diǎn)服務(wù)器(SQL Server數(shù)據(jù)庫(kù)引擎服務(wù)登錄賬戶)能夠通過(guò)UNC路勁進(jìn)行可讀寫訪問。
2、利用向?qū)陆ǜ呖捎眯越M
1)在“開始”菜單中點(diǎn)擊“所有程序”-“Microsoft SQL Server 2012”-“配置工具”,打開“SQL Server Management Studio”。
2)展開“AlwaysOn高可用性”節(jié)點(diǎn),右擊“可用性組”,在上下文菜單中,選擇“新建可用性組向?qū)А薄?/P>
3)在“簡(jiǎn)介”頁(yè)面點(diǎn)擊“下一步”。
4)為將要?jiǎng)?chuàng)建的高可用性組指定名稱。
5)選擇滿足加入高可用性組條件的數(shù)據(jù)庫(kù),點(diǎn)擊“下一步”。
6)為高可用性組添加其它SQL Server服務(wù)器節(jié)點(diǎn)為副本。點(diǎn)擊“添加副本”按鈕,一次添加所需SQL Server服務(wù)器,并且指定初始角色為“主”或“輔助”。最多可選2個(gè)副本實(shí)現(xiàn)自動(dòng)故障轉(zhuǎn)移,這兩個(gè)副本將同時(shí)使用同步提交可用性模式。最多可支持3個(gè)副本進(jìn)行同步提交可用性模式,若使用異步提交必須強(qiáng)制手動(dòng)故障轉(zhuǎn)移。對(duì)于可讀輔助副本設(shè)置來(lái)講,可選擇其為是否可讀或僅讀意向,需要注意只有主數(shù)據(jù)庫(kù)副本才可寫。
詳細(xì)請(qǐng)參考:http://msdn.microsoft.com/zh-cn/library/ff877931.aspx
7)點(diǎn)擊“端點(diǎn)”選項(xiàng)卡,可以設(shè)置高可用性組的端點(diǎn)URL。使用默認(rèn)設(shè)置即可。
詳細(xì)請(qǐng)參考:http://msdn.microsoft.com/zh-cn/library/ff878441.aspx
8)在“備份首選項(xiàng)”中,指定作為備份副本的節(jié)點(diǎn)。默認(rèn)是在“首選輔助副本”中進(jìn)行備份??梢酝ㄟ^(guò)副本備份優(yōu)先級(jí)來(lái)指定首選。默認(rèn)所有節(jié)點(diǎn)均為50。
9)為高可用性組創(chuàng)建偵聽器,指定其DNS名稱的Host Name和端口,建議IP地址使用靜態(tài)IP,并且添加新的群集IP作為高可用性組使用,如此可以指定SQL Server的默認(rèn)端口1443,以便簡(jiǎn)化客戶端訪問的配置。
10)初始化數(shù)據(jù)同步首選項(xiàng),建議選擇“完整”,并指定之前創(chuàng)建的UNC共享路徑。點(diǎn)擊“下一步”
11)驗(yàn)證是否滿足高可用性組創(chuàng)建需求,如果結(jié)果全為綠色對(duì)勾,點(diǎn)擊“下一步”。
12)檢查并確認(rèn)之前的配置信息,若無(wú)誤,點(diǎn)擊“完成”。另外,此處也可保存建組腳本,以便分步診斷故障之用。
13)等待向?qū)瓿蓜?chuàng)建SQL Server 2012高可用性組。
14)知道最終完成,所有摘要均成功完成,顯示綠色對(duì)勾。如果出現(xiàn)黃色警告,則需進(jìn)行進(jìn)一步判斷是否成功。若出現(xiàn)紅色錯(cuò)誤,表示創(chuàng)建AG不成功。
在此,出現(xiàn)了黃色告警,點(diǎn)擊“警告”,在彈出對(duì)話框中顯示如下:
可以表明高可用性組成功創(chuàng)建,但WSFC的“多數(shù)節(jié)點(diǎn)”仲裁模式不是被推薦的。
15)返回SSMS窗口,在“可用性組”節(jié)點(diǎn)下顯示“AG01”的面板,可以觀察該高可用性組的狀態(tài)。
3、高可用性組的基本管理
創(chuàng)建完成高可用性組后,可用通過(guò)SSMS對(duì)高可用性組進(jìn)行基本的管理。
1)直接右擊需要管理的高可用性組,在上下文菜單中可以選擇為其“添加新數(shù)據(jù)庫(kù)”、“添加副本”、“添加偵聽器”及手動(dòng)執(zhí)行“故障轉(zhuǎn)移”等操作。點(diǎn)擊“屬性”,也可以編輯該AG的各種屬性值。
2)在高可用性組的屬性“常規(guī)”選項(xiàng)卡中,可以為其添加/刪除數(shù)據(jù)庫(kù)、副本節(jié)點(diǎn),并配置各可用性副本節(jié)點(diǎn)的參數(shù)設(shè)定值。
3)在“備份首選項(xiàng)”選項(xiàng)卡中,可以修改相應(yīng)副本節(jié)點(diǎn)的備份優(yōu)先級(jí)和備份執(zhí)行的位置。
4)針對(duì)高可用性組中具體的副本節(jié)點(diǎn)配置,可以展開該組中“可用性副本”,右擊需要配置的副本節(jié)點(diǎn),在上下文菜單中點(diǎn)擊“屬性”。
5)在其“常規(guī)”選項(xiàng)卡中可以修改配置當(dāng)前副本節(jié)點(diǎn)“可用性模式”、“故障轉(zhuǎn)移模式”以及“會(huì)話超時(shí)”時(shí)間等。
6)可以通過(guò)右擊“可用性組偵聽器”中的具體偵聽器,打開其“屬性”,對(duì)偵聽器進(jìn)行相應(yīng)配置。
7)可以修改偵聽器的偵聽端口,從而指定客戶端訪問AG中數(shù)據(jù)庫(kù)所需要連接的服務(wù)端口。
關(guān)于這些問題暫時(shí)先討論到這里,有時(shí)間再后續(xù)。
本文出自 “胖哥技術(shù)堂” 博客
相關(guān)文章
Win2003主機(jī)播放FLV視頻的設(shè)置圖解方法
目前很多虛擬主機(jī)都是2003的系統(tǒng),默認(rèn)是不支持FLV格式提供服務(wù)的,解決這個(gè)問題的方法有兩個(gè)。2008-04-04IIS ADMIN不能啟動(dòng),提示錯(cuò)誤代碼-2146893818的解決方法
這篇文章主要介紹了IIS ADMIN不能啟動(dòng),提示錯(cuò)誤代碼-2146893818的解決方法,需要的朋友可以參考下2014-09-09介紹 IIS 7.5 的應(yīng)用程序池與新增的「虛擬帳戶」特性
這篇文章主要介紹了介紹 IIS 7.5 的應(yīng)用程序池與新增的「虛擬帳戶」特性,需要的朋友可以參考下2016-01-01win2003 R2升級(jí)提示另一個(gè)應(yīng)用程序要求重新啟動(dòng)的解決方法
windows2003 R2升級(jí)提示另一個(gè)應(yīng)用程序要求重新啟動(dòng)計(jì)算機(jī),您必須重新啟動(dòng)此計(jì)算機(jī)安裝程序才能運(yùn)行的臨時(shí)解決方法2012-06-06詳解IIS中URL重寫工具的規(guī)則條件(Rule conditions)
本文結(jié)合官方文檔和相關(guān)示例,詳細(xì)記錄了在IIS中URL重寫工具下的規(guī)則條件(Rule conditions)的相關(guān)說(shuō)明。規(guī)則條件允許我們通過(guò)額外的邏輯規(guī)則來(lái)過(guò)濾和匹配規(guī)則模式( rule pattern ),所以只有當(dāng)規(guī)則模式的URL匹配成功時(shí),Rule conditions才會(huì)起作用2017-03-03