003.SQLServer數據庫鏡像高可用部署


一 數據庫鏡像部署准備

1.1 數據庫鏡像支持

有關對 SQL Server 2012 中的數據庫鏡像的支持的信息,請參考:https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2012/cc645993%28v%3dsql.110%29

1.2 其他前置條件

  • 若要建立鏡像會話,伙伴雙方和見證服務器(如果有)必須在相同版本的 SQL Server 上運行。
  • 確保兩個伙伴(即主體服務器和鏡像服務器)必須運行相同版本的 SQL Server。 見證服務器(如果有)在任意支持數據庫鏡像的 SQL Server 版本上運行。
  • 數據庫必須使用完整恢復模式。 簡單恢復模式和大容量日志恢復模式不支持數據庫鏡像。 因此,鏡像數據庫的大容量操作始終被完整地記入日志。
  • 驗證鏡像服務器是否能為鏡像數據庫提供足夠的磁盤空間。
  • 在鏡像服務器上創建鏡像數據庫時,請確保指定相同數據庫名稱 WITH NORECOVERY 來還原主體數據庫備份。 另外,還必須通過 WITH NORECOVERY 應用在該備份執行后創建的所有日志備份。

注意:如果數據庫鏡像已經停止,則必須將對主體數據庫執行的所有后續日志備份應用到鏡像數據庫中,然后才可以重新啟動鏡像。

1.3 其他限制

  • 只能鏡像用戶數據庫。 不能鏡像 master、 msdb、tempdb 或 model 數據庫。
  • 鏡像的數據庫在數據庫鏡像會話過程中不能重命名。
  • 數據庫鏡像不支持 FILESTREAM。 不能在主體服務器上創建 FILESTREAM 文件組。 不能為包含 FILESTREAM 文件組的數據庫配置數據庫鏡像。
  • 在 32 位系統上,由於受每個數據庫鏡像會話所占用的工作線程數限制,對於每個服務器實例,數據庫鏡像最多支持 10 個數據庫。
  • 跨數據庫事務和分布式事務均不支持數據庫鏡像。

二 部署規划准備

2.1 服務器規划

按照如下規划配置主機名(domain前綴)及IP。
服務器名稱
描述
IP
DNS
操作系統
數據庫版本
dsserver.imxhy.com
域服務器+DNS服務器
172.24.8.31
127.0.0.1
Windows Server 2008 R2
 
master.imxhy.com
主數據庫服務器
172.24.8.32
172.24.8.31
Windows Server 2008 R2
SQLServer 2012 Enterprise
slave.imxhy.com
鏡像數據庫服務器
172.24.8.33
172.24.8.31
Windows Server 2008 R2
SQLServer 2012 Enterprise
arbit.imxhy.com
見證服務器
172.24.8.34
172.24.8.31
Windows Server 2008 R2
SQLServer 2012 Enterprise
提示:為便於測試,本環境將所有節點的專用、公用、域網絡的防火牆均關閉。

三 DNS服務器安裝

dsserver相關IP設置如下。
031
開始菜單 -> 管理工具 -> 服務器管理器 -> 角色 -> 添加角色,選擇DNS 服務器,下一步:
32
等待安裝完成。
32
如下相關服務已安裝完成。
033

四 安裝 Active Directory 域服務

開始菜單 -> 管理工具 -> 服務器管理器 -> 角色 -> 添加角色,選擇Active Directory 域服務。
034
等待安裝完成。
035
如下相關服務已安裝完成。
036
開始菜單 -> 運行 -> 輸入命令 "dcpromo" ,進入域控制器服務向導。
037
提示:dcpromo 命令是一個 "開關" 命令。如果 Windows Server  2008 計算機是成員服務器,則 運行 dcpromo 命令會安裝 AD 活動目錄,將其升級為域控制器;如果Windows Server 2008 計算機已經是域控制器,則運行 dcpromo 命令會卸載 AD 活動目錄,將其降級為成員服務器。
彈出 Active Direcotry 域服務安裝向導,點擊 "下一步" 按鈕:
038
進入兼容性提醒頁面,忽視即可,點擊 "下一步" 按鈕:
039
選擇 "在新林中新建域”並點擊",點擊 "下一步" 按鈕:
注意:如果是第一次搭建也是你整個內網中的第一台域控制器,那么需要選擇第二項 "在新林中新建域",第一項是內網中已經存在 AD 環境再想搭建額外域控制器的時候使用的。
040
輸入域名imxhy.com,這個需慎重,FQDN配置完畢之后修改相對麻煩且有風險,並點擊 "下一步" 按鈕:
041
進入林功能級別設置界面,選擇 "Windows Server 2008 R2",然后點擊 "下一步":
提示:如果你的 AD 中以后可能會出現 Windows Server 2003 系統的域控制器,請務必選擇 Windows Server 2003 的域功能級別,否則之后 Windows Server 2003 的服務器做不了域控制器了,所以安裝第一台 DC 的時候,可是選擇的低級別的林功能,以后要升到 Windows Server 2008 的域功能級別是沒問題的,若是選了 Windows Server 2008 的功能級別,降級比較困難。
042
其他域選項,若已安裝,則會為灰色。
043
彈出 DNS 提示框,可忽視,點擊 "是" 按鈕,繼續安裝:
044
進入AD 域的數據庫文件、日志文件和共享文件位置設置頁面,此處保持默認設置,點擊 "下一步" 按鈕:
045
進入 "域還原密碼" 設置界面,此密碼相當的重要,后續做數據庫遷移、備份、整理、恢復的時候都可能用到,需要謹記:
046
進入 "摘要" 界面,顯示之前設置的摘要信息,點擊 "下一步" 按鈕:
提示:此處可以點擊 "導出設置" 到一個位置保持起來,以便后續排錯時查閱,也可以作為 DC 安裝時的無人值守安裝的腳本。
047
安裝向導進入配置過程
048
此時,AD  域服務已經安裝完成。ADDS域控制器已經安裝完成,在完成域控制器的安裝后,系統會自動的將該服務器的用戶賬號轉移到 AD 數據庫中。
提示:安裝完成后,建議重啟服務器。
049
域控制器 DC 會將自己扮演的角色注冊到 DNS 服務器內,以便讓其他計算機能夠通過 DNS 服務器來找到這台域控制器,因此先檢查 DNS 服務器內是否已經存在這些記錄。
050
首先檢查域控制器是否已經將其主機名與 IP 地址注冊到 DNS 服務器內,本域控制器也扮演DNS服務器,則進入DNS中查看,此處應該會有一個名稱為 imxhy.com 的區域,主機(A)記錄表示域控制器 dsserver.imxhy.com 已經正確地將其主機名與 IP 地址注冊到 DNS 服務器內。DNS 客戶端所提出的請求大多是正向解析,即通過 hostname 來解析 IP 地址對應與此處的正向查找區域;通過 IP 來查找 hostname 即為反向解析,對應於此處的反向查找區域。
051
如果域控制器已經正確地將其扮演的角色注冊到 DNS 服務器,則還應該有對應的 _tcp、_udp 等文件夾。在單擊 _tcp 文件夾后可以看到如下所示的界面,其中數據類型為服務位置(SRV)的 _ldap 記錄,表示 dsserver.imxhy.com 已經正確地注冊為域控制器。其中的 _gc 記錄還可以看出全局編錄服務器的角色也是由 dsserver.imxhy.com 扮演的。
052
DNS 區域內包含這些數據后,其他要加入域的計算機就可以通過通過此區域來得知域控制器為 dsserver.imxhy.com。這些加入域的成員(域控制器、成員服務器、Windows 8、Windows 7、Windows Vista、Windows XP Professional 等)也會將其主機與 IP 地址數據注冊到此區域內。

五 域用戶創建及加入

5.1 域用戶創建

開始菜單 -> 管理工具 -> Active Directory 用戶和計算機
053
設置相關sqluser賬號及密碼。
054
設置符合一定密碼復雜度要求的密碼。
055
將sqluser加入到administrators管理組中。
056

5.2 加入域控

master相關IP設置如下。
057
高級 -> DNS -> 此連接的 dns 后綴,添加域控的完整名稱。
058
計算機右鍵 -> 屬性 -> 高級系統設置 -> 計算機名 -> 更改
修改計算機名master,修改隸屬於域:imxhy.com
059
點確定之后彈出一個輸入在域控中建立的用戶的用戶名和密碼。
060
提示加入成功,加入成功后建議重啟計算機。
061
注意:master.imxhy.com、slave.imxhy.com、arbit.imxhy.com都需要配置相關DNS為172.24.8.31,然后加入域“imxhy.com”,具體方法參考如上即可。

5.3 服務器配置域帳戶管理員

在master.imxhy.com、slave.imxhy.com計算機繼續使用本地管理員administrator登錄,分別將“imxhy\sqluser”帳戶添加為本機管理員,如圖所示:
062
注銷本地administrator,使用sqluser@imxhy.com用戶登錄,確認已具有管理員權限。
063

六 安裝SQLServer 2012

6.1 使用向導安裝

064
系統會自動檢查安裝環境,點擊確認到下一步。
065
正版自帶產品密鑰,直接點擊下一步。
066
勾選我接受許可條款,然后一直繼續下一步。
067
進行產品更新。
068
勾選我接受許可條款,然后一直繼續下一步。
069
檢查安裝程序支持規則。
070
采用默認SQL Server功能安裝。
071
本實驗安裝主要功能,自行選擇,安裝路徑采用默認,可根據需要自行選擇。
072

提示:具體SQLServer功能模塊介紹可參考:https://blog.csdn.net/m0_37154839/article/details/80233446。

默認實列即可。

 
073
檢查磁盤空間要求。
074
服務器配置,將相關賬戶配置為域用戶及密碼,相關服務設置為自動啟動。
075
其他相關組件如下即可。
076
建議使用混合模式,並添加當前域用戶。
077
錯誤報告配置。
078
安裝配置規則。
079
准備安裝,可確認所有相關信息。
080
等待安裝完成。
081
安裝完成。
082

6.2 配置SQLServer以域帳戶運行

分別在master.imxhy.com、slave.imxhy.com的“管理工具”中打開“服務”(或者用“SQL Server 配置管理器”),修改SQL Server實例的屬性,將登錄身份改為“imxhy\sqluser”。修改之后,重啟SQL Server實例。
083
提示:安裝過程中服務器配置已添加域賬戶可跳過此6.2步驟。
084
說明:如果SQL Server實例是通過不同的本地帳戶啟動的,那么在創建鏡像時主體數據庫會嘗試用本機帳戶去連接鏡像數據庫,最終會報錯;
slave.imxhy.com、arbit.imxhy.com參考以上進行安裝及配置。

6.3 啟用TCP/IP協議和RemoteDAC

085
打開SQL Server Management Studio,連接本地數據庫,
086
選擇對應服務器, 如MASTER -> 方面。
087
選擇“外圍應用配置器” -> 將屬性“RemoteDACEnabled”的值改為“True”。
088
注意:slave.imxhy.com、arbit.imxhy.com參考以上進行安裝及配置。

七 測試數據庫准備工作

7.1 master節點新建用戶同步的數據庫

在master.imxhy.com(主體服務器)打開SQL Server Management Studio,右鍵”數據庫” -> “新建數據庫”。
089
在”常規“頁面輸入數據庫名稱,本實驗為MDB。
090
在”選項”頁面確保恢復模式為”完整“。
091

7.2 備份master節點數據庫MDB

右鍵”MDB”選擇”任務“ -> ”備份“。
092
備份類型選擇”完整“,點擊”確定“。
093
完整的備份完畢后,再次選擇備份類型為”事務日志“,點擊”確定“完成對事務日志的備份。
094
提示:默認備份路徑為:C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup。

7.3 slave節點新建用戶同步的數據庫

在slave.imxhy.com(鏡像服務器)打開SQL Server Management Studio,右鍵”數據庫” -> “新建數據庫”。
095
輸入數據庫名稱,點擊“確定”(此數據庫名稱必須與master中創建的數據庫名稱保持一致)
096

7.4 slave節點還原備份文件

將7.2所備份的文件MDB.bak復制至slave節點備份存放默認路徑:C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup。
右鍵新創建的數據庫“MDB” -> “任務” -> “還原” -> “數據庫”。
097
依次添加需要還原的相關文件。
098
勾選要還原的備份集。
099
在“選項”頁面勾選“覆蓋現有數據庫”,恢復狀態選擇“RESTORE WITH NORECOVERY”,取消勾選“還原前進行結尾日志備份”,點擊“確定”。
100
等待還原成功。
101
確認slave.imxhy.com(鏡像服務器)處於正在還原。
102
提示:提示成功還原后slave節點MDB會一直處於正在還原狀態,此狀態為正常狀態,表示等待master節點發起鏡像同步。

八 配置數據庫鏡像

8.1 master節點配置鏡像

在主體服務器SQL01.huangjh.com右鍵 -> “DB01” -> “任務” -> “鏡像”。
103
點擊“配置安全性”。
104
本實驗規划見證服務器。
105
勾選“見證服務器實例”,下一步。
106
配置主題服務器實例及相應端口。
107
配置鏡像服務器,可通過瀏覽或手動輸入鏡像服務器名稱SLAVE,點擊”連接”。
108
 
109
配置鏡像服務器,可通過瀏覽或手動輸入見證服務器名稱ARBIT,點擊”連接”。
110
 
111
確認見證服務器及相關端口信息。
112
輸入實例服務賬戶IMXHY\sqluser,下一步。
113
確認相關信息。
114
等待配置端點完成。
115
點擊“開始鏡像”。
116
提示:若出現鏡像失敗可在hosts中手動添加相應解析,保證網絡連通性正常。
117

九 檢查與驗證

9.1 狀態檢查

主體服務器相關數據庫狀態應該為(主體,已同步)
118
鏡像服務器相關數據庫狀態應該為(客體,已同步 / 正在還原..)
119
提示:對於鏡像數據庫,是不允許刪除和操作。

十 功能驗證

10.1 狀態驗證

在主體服務器MASTER右鍵數據庫“MDB”選擇“任務”—“啟動數據庫鏡像監視器”。
120
在此頁面可看到數據庫鏡像的同步狀態等。
121

10.2 故障遷移測試

在主體服務器MASTER右鍵數據庫“MDB”選擇“屬性”,在主體服務器SQL01右鍵數據庫“DB01”選擇“屬性”,選擇頁“鏡像”點擊“故障轉移”。
122
是。
123
在SLAVE上確認MDB狀態是否變為(主體,已同步),可查看相關主體和鏡像服務器已成功切換。
124

10.3 關機高可用測試

關閉此時的主體服務器,即SLAVE,然后回到MASTER,觀察可知此時自動將主體故障轉移到MASTER中,且鏡像服務器SLAVE,狀態為”沒有連接:無法連接鏡像服務器實例或見證服務器實例”。
125
將SLAVE開機后恢復正常后,狀態為”已同步:數據庫已完全同步”,說明自動故障轉移成功。
126
 
參考官方文檔:https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2012/ms189852(v%3dsql.110)
https://blog.csdn.net/kelyon/article/details/79207585
http://www.php.cn/mysql-tutorials-116073.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM