兩年前的《SQL Server 2008 R2數據庫鏡像部署》,今天“再續前緣”——
微軟新一代數據庫產品SQL Server 2012已經面世一段時間了,不管從功能上講還是性能上的體現,較之其早期產品都有了很大提升。特別是其引入高可用性組(AlwaysOn Group, AG)這一概念和功能,大大增強和提高了SQL Server的可用性,在之前的鏡像數據庫的基礎上有了質的變化。
SQL Server 2012高可用性組在實現過程中較之早起的SQL Server故障轉移群集來講,不依賴特別提供共享存儲磁盤陣列,每個節點獨立存儲一份數據庫的副本。其較之早起的鏡像數據庫來講,提供多節點高可用,并且針對數據庫輔助節點副本可讀;此外,在當前可讀節點出現故障時,能通過AG自身的機制保證數據庫正常訪問,而不需要像之前的鏡像數據庫一樣,需要通過訪問端來進行切換。
因此,以下將對SQL Server 2012高可用性組的實現進行詳細介紹。
一、具體的環境如下
在Windows域中,部署3臺成員服務器用作SQL Server服務器,因為SQL Server 2012的高可用性組需要Windows的群集服務支持,所以必須預先在這些成員服務器上實現WSFC。服務器的操作系統均為Windows Server 2008 R2,因此其WSFC的仲裁配置有多數(奇數)節點、節點(偶數)和磁盤多數、多數節點(偶數)和文件共享、非多數:僅磁盤等4種。在此,為了體現SQL Server AG無需要各節點共享存儲設備這一特性,準備使用3個節點實現。由于是奇數,所以選擇多數節點仲裁配置。雖然這種仲裁配置不是被SQL Server 2012 AG推薦的,但是并不影響AG的實現和使用。
2)在添加功能向導中,勾選“故障轉移群集”,點擊“下一步”。
4)完成并關閉“故障轉移群集”的安裝。
2)在“開始之前”頁中,點擊“下一步”。
4)在“驗證警告”頁面中,如果需要對基本環境(包括硬件)進行WSFC需求驗證,可以選擇“是”。在本示例中由于不必需進行驗證,所以選擇“否”。點擊“下一步”。
6)確認之前配置信息,若無誤,點擊“下一步”,開始群集創建。
8)在“故障轉移群集管理器”會顯示成功創建的群集,展開其“節點”,顯示現有節點情況。
10)在“開始之前”頁面中點擊“下一步”。
詳細請參考:
12)在“確認”頁面中,點擊“下一步”。
至此,為SQL Server 2012 AG準備的WSFC環境已經完成。
三、為各節點服務器安裝并配置SQL Server 2012,以SQL03為例進行如下操作。
1、安裝SQL Server 2012
1)在節點服務器上,插入SQL Server 2012安裝介質。運行“SQL Server安裝中心”,選擇“安裝”,點擊“全新SQL Server獨立安裝或向現有安裝添加功能”。
注意:這里不要選擇“新的SQL Server故障轉移群集安裝”,如果是故障轉移群集安裝的話最終將實現的是早起的SQL數據庫群集,并且需要共享數據存儲磁盤整列,導致所有SQL節點共享同一個數據存儲副本。
3)指定產品密鑰,或選擇Evaluation版本。
5)運行檢查“安裝程序支持規則”,驗證SQL Server 2012運行環境是否符合要求。
7)在“功能選擇”列表中選擇實際所需功能,在此,為了簡便不再進行自定義。直接使用默認選中組件。并且,需要指定相應的“共享功能目錄”,即SQL Server的安裝位置。
9)選擇并指定實例名,在此使用默認實例來進行示范,并且指定“實例根目錄”。
11)指定“服務賬戶”和“排序規則”,在此選擇默認設置。如果需要在完成安裝后進行自定義配置,點擊“下一步”。
13)在“Analysis Services配置”頁面進行和“數據庫引擎配置”頁面中類似的配置。點擊“下一步”。
15)“添加當前用戶”為“分布式重播控制器”的管理員。點擊“下一步”。
注意:以上第13-16步根據第7步中所選功能不同,配置情況有所差異。
17)是否發送錯誤報告頁面中可選擇是否將錯誤報告發送給微軟。
19)在“準備安裝”頁面中,確認之前進行的各種參數配置是否正確,如果無誤,點擊“安裝”,啟動安裝進程。
21)可能在某些環境中安裝,會收到如下提示,只需重啟服務器操作系統即可。
2)在控制臺中點擊“SQL Server服務”節點,在右邊窗口中右擊“SQL Server (MSSQLSERVER)”,在上下文菜單中選擇“屬性”。
4)在彈出警告對話框中提示該修改需要重啟SQL Server數據庫引擎服務才能生效,點擊“確定”。
6)為了避免在實現AlwaysOn Group時帶來復雜的權限設置,建議將相關的SQL服務(如:SQL Server數據庫引擎服務)啟動登錄身份由默認的“內置賬戶”改為指定的域賬戶。
以上步驟在SQL01/02上均進行相同的操作即可。
四、創建配置高可用性組
高可用性組的創建操作可以有三種方式:向導方式、對話框方式和腳本方式,在此以向導方式SQL03上創建的DB01作為主數據庫為例進行介紹。
1、為高可用性組創建配置數據庫
要使用向導創建高可用性組,必須要有符合條件的數據庫存在,才能進行相關的操作。那么數據庫要符合怎樣的條件才能滿足條件呢?
1)主數據庫的恢復模式必須是“完整”恢復模式。
3)需要一個共享路徑提供給備份包存儲,并允許所有節點服務器(SQL Server數據庫引擎服務登錄賬戶)能夠通過UNC路勁進行可讀寫訪問。
2)展開“AlwaysOn高可用性”節點,右擊“可用性組”,在上下文菜單中,選擇“新建可用性組向導”。
4)為將要創建的高可用性組指定名稱。
6)為高可用性組添加其它SQL Server服務器節點為副本。點擊“添加副本”按鈕,一次添加所需SQL Server服務器,并且指定初始角色為“主”或“輔助”。最多可選2個副本實現自動故障轉移,這兩個副本將同時使用同步提交可用性模式。最多可支持3個副本進行同步提交可用性模式,若使用異步提交必須強制手動故障轉移。對于可讀輔助副本設置來講,可選擇其為是否可讀或僅讀意向,需要注意只有主數據庫副本才可寫。
詳細請參考:
8)在“備份首選項”中,指定作為備份副本的節點。默認是在“首選輔助副本”中進行備份。可以通過副本備份優先級來指定首選。默認所有節點均為50。
10)初始化數據同步首選項,建議選擇“完整”,并指定之前創建的UNC共享路徑。點擊“下一步”
12)檢查并確認之前的配置信息,若無誤,點擊“完成”。另外,此處也可保存建組腳本,以便分步診斷故障之用。
14)知道最終完成,所有摘要均成功完成,顯示綠色對勾。如果出現黃色警告,則需進行進一步判斷是否成功。若出現紅色錯誤,表示創建AG不成功。
可以表明高可用性組成功創建,但WSFC的“多數節點”仲裁模式不是被推薦的。
15)返回SSMS窗口,在“可用性組”節點下顯示“AG01”的面板,可以觀察該高可用性組的狀態。
2)在高可用性組的屬性“常規”選項卡中,可以為其添加/刪除數據庫、副本節點,并配置各可用性副本節點的參數設定值。
4)針對高可用性組中具體的副本節點配置,可以展開該組中“可用性副本”,右擊需要配置的副本節點,在上下文菜單中點擊“屬性”。
6)可以通過右擊“可用性組偵聽器”中的具體偵聽器,打開其“屬性”,對偵聽器進行相應配置。
關于這些問題暫時先討論到這里,有時間再后續。
本文出自 “胖哥技術堂” 博客
新聞熱點
疑難解答
圖片精選