一 數據庫鏡像部署準備
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 應用在該備份執行後建立的全部日誌備份。
注意:若是數據庫鏡像已經中止,則必須將對主體數據庫執行的全部後續日誌備份應用到鏡像數據庫中,而後才能夠從新啓動鏡像。php
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設置以下。
開始菜單 -> 管理工具 -> 服務器管理器 -> 角色 -> 添加角色,選擇DNS 服務器,下一步:
等待安裝完成。
以下相關服務已安裝完成。
四 安裝 Active Directory 域服務
開始菜單 -> 管理工具 -> 服務器管理器 -> 角色 -> 添加角色,選擇Active Directory 域服務。
等待安裝完成。
以下相關服務已安裝完成。
開始菜單 -> 運行 -> 輸入命令 "dcpromo" ,進入域控制器服務嚮導。
提示:dcpromo 命令是一個 "開關" 命令。若是 Windows Server 2008 計算機是成員服務器,則 運行 dcpromo 命令會安裝 AD 活動目錄,將其升級爲域控制器;若是Windows Server 2008 計算機已是域控制器,則運行 dcpromo 命令會卸載 AD 活動目錄,將其降級爲成員服務器。
彈出 Active Direcotry 域服務安裝嚮導,點擊 "下一步" 按鈕:
進入兼容性提醒頁面,忽視便可,點擊 "下一步" 按鈕:
選擇 "在新林中新建域」並點擊",點擊 "下一步" 按鈕:
注意:若是是第一次搭建也是你整個內網中的第一臺域控制器,那麼須要選擇第二項 "在新林中新建域",第一項是內網中已經存在 AD 環境再想搭建額外域控制器的時候使用的。
輸入域名imxhy.com,這個需慎重,FQDN配置完畢以後修改相對麻煩且有風險,並點擊 "下一步" 按鈕:
進入林功能級別設置界面,選擇 "Windows Server 2008 R2",而後點擊 "下一步":
提示:若是你的 AD 中之後可能會出現 Windows Server 2003 系統的域控制器,請務必選擇 Windows Server 2003 的域功能級別,不然以後 Windows Server 2003 的服務器作不了域控制器了,因此安裝第一臺 DC 的時候,但是選擇的低級別的林功能,之後要升到 Windows Server 2008 的域功能級別是沒問題的,如果選了 Windows Server 2008 的功能級別,降級比較困難。
其餘域選項,若已安裝,則會爲灰色。
彈出 DNS 提示框,可忽視,點擊 "是" 按鈕,繼續安裝:
進入AD 域的數據庫文件、日誌文件和共享文件位置設置頁面,此處保持默認設置,點擊 "下一步" 按鈕:
進入 "域還原密碼" 設置界面,此密碼至關的重要,後續作數據庫遷移、備份、整理、恢復的時候均可能用到,須要謹記:
進入 "摘要" 界面,顯示以前設置的摘要信息,點擊 "下一步" 按鈕:
提示:此處能夠點擊 "導出設置" 到一個位置保持起來,以便後續排錯時查閱,也能夠做爲 DC 安裝時的無人值守安裝的腳本。
安裝嚮導進入配置過程
此時,AD 域服務已經安裝完成。ADDS域控制器已經安裝完成,在完成域控制器的安裝後,系統會自動的將該服務器的用戶帳號轉移到 AD 數據庫中。
提示:安裝完成後,建議重啓服務器。
域控制器 DC 會將本身扮演的角色註冊到 DNS 服務器內,以便讓其餘計算機可以經過 DNS 服務器來找到這臺域控制器,所以先檢查 DNS 服務器內是否已經存在這些記錄。
首先檢查域控制器是否已經將其主機名與 IP 地址註冊到 DNS 服務器內,本域控制器也扮演DNS服務器,則進入DNS中查看,此處應該會有一個名稱爲 imxhy.com 的區域,主機(A)記錄表示域控制器 dsserver.imxhy.com 已經正確地將其主機名與 IP 地址註冊到 DNS 服務器內。DNS 客戶端所提出的請求大可能是正向解析,即經過 hostname 來解析 IP 地址對應與此處的正向查找區域;經過 IP 來查找 hostname 即爲反向解析,對應於此處的反向查找區域。
若是域控制器已經正確地將其扮演的角色註冊到 DNS 服務器,則還應該有對應的 _tcp、_udp 等文件夾。在單擊 _tcp 文件夾後能夠看到以下所示的界面,其中數據類型爲服務位置(SRV)的 _ldap 記錄,表示 dsserver.imxhy.com 已經正確地註冊爲域控制器。其中的 _gc 記錄還能夠看出全局編錄服務器的角色也是由 dsserver.imxhy.com 扮演的。
DNS 區域內包含這些數據後,其餘要加入域的計算機就能夠經過經過此區域來得知域控制器爲 dsserver.imxhy.com。這些加入域的成員(域控制器、成員服務器、Windows 八、Windows 七、Windows Vista、Windows XP Professional 等)也會將其主機與 IP 地址數據註冊到此區域內。
五 域用戶建立及加入
5.1 域用戶建立
開始菜單 -> 管理工具 -> Active Directory 用戶和計算機
設置相關sqluser帳號及密碼。
設置符合必定密碼複雜度要求的密碼。
將sqluser加入到administrators管理組中。
5.2 加入域控
master相關IP設置以下。
高級 -> DNS -> 此鏈接的 dns 後綴,添加域控的完整名稱。
計算機右鍵 -> 屬性 -> 高級系統設置 -> 計算機名 -> 更改
修改計算機名master,修改隸屬於域:imxhy.com
點肯定以後彈出一個輸入在域控中創建的用戶的用戶名和密碼。
提示加入成功,加入成功後建議重啓計算機。
注意: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」賬戶添加爲本機管理員,如圖所示:
註銷本地administrator,使用sqluser@imxhy.com用戶登陸,確認已具備管理員權限。
六 安裝SQLServer 2012
6.1 使用嚮導安裝
系統會自動檢查安裝環境,點擊確認到下一步。
正版自帶產品密鑰,直接點擊下一步。
勾選我接受許可條款,而後一直繼續下一步。
進行產品更新。
勾選我接受許可條款,而後一直繼續下一步。
檢查安裝程序支持規則。
採用默認SQL Server功能安裝。
本實驗安裝主要功能,自行選擇,安裝路徑採用默認,可根據須要自行選擇。
提示:具體SQLServer功能模塊介紹可參考:https://blog.csdn.net/m0_37154839/article/details/80233446。html
默認實列便可。mysql
檢查磁盤空間要求。
服務器配置,將相關帳戶配置爲域用戶及密碼,相關服務設置爲自動啓動。
其餘相關組件以下便可。
建議使用混合模式,並添加當前域用戶。
錯誤報告配置。
安裝配置規則。
準備安裝,可確認全部相關信息。
等待安裝完成。
安裝完成。
6.2 配置SQLServer以域賬戶運行
分別在master.imxhy.com、slave.imxhy.com的「管理工具」中打開「服務」(或者用「SQL Server 配置管理器」),修改SQL Server實例的屬性,將登陸身份改成「imxhy\sqluser」。修改以後,重啓SQL Server實例。
提示:安裝過程當中服務器配置已添加域帳戶可跳過此6.2步驟。
說明:若是SQL Server實例是經過不一樣的本地賬戶啓動的,那麼在建立鏡像時主體數據庫會嘗試用本機賬戶去鏈接鏡像數據庫,最終會報錯;
slave.imxhy.com、arbit.imxhy.com參考以上進行安裝及配置。
6.3 啓用TCP/IP協議和RemoteDAC
打開SQL Server Management Studio,鏈接本地數據庫,
選擇對應服務器, 如MASTER -> 方面。
選擇「外圍應用配置器」 -> 將屬性「RemoteDACEnabled」的值改成「True」。
注意:slave.imxhy.com、arbit.imxhy.com參考以上進行安裝及配置。
七 測試數據庫準備工做
7.1 master節點新建用戶同步的數據庫
在master.imxhy.com(主體服務器)打開SQL Server Management Studio,右鍵」數據庫」 -> 「新建數據庫」。
在」常規「頁面輸入數據庫名稱,本實驗爲MDB。
在」選項」頁面確保恢復模式爲」完整「。
7.2 備份master節點數據庫MDB
右鍵」MDB」選擇」任務「 -> 」備份「。
備份類型選擇」完整「,點擊」肯定「。
完整的備份完畢後,再次選擇備份類型爲」事務日誌「,點擊」肯定「完成對事務日誌的備份。
提示:默認備份路徑爲:C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup。
7.3 slave節點新建用戶同步的數據庫
在slave.imxhy.com(鏡像服務器)打開SQL Server Management Studio,右鍵」數據庫」 -> 「新建數據庫」。
輸入數據庫名稱,點擊「肯定」(此數據庫名稱必須與master中建立的數據庫名稱保持一致)
7.4 slave節點還原備份文件
將7.2所備份的文件MDB.bak複製至slave節點備份存放默認路徑:C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup。
右鍵新建立的數據庫「MDB」 -> 「任務」 -> 「還原」 -> 「數據庫」。
依次添加須要還原的相關文件。
勾選要還原的備份集。
在「選項」頁面勾選「覆蓋現有數據庫」,恢復狀態選擇「RESTORE WITH NORECOVERY」,取消勾選「還原前進行結尾日誌備份」,點擊「肯定」。
等待還原成功。
確認slave.imxhy.com(鏡像服務器)處於正在還原。
提示:提示成功還原後slave節點MDB會一直處於正在還原狀態,此狀態爲正常狀態,表示等待master節點發起鏡像同步。
八 配置數據庫鏡像
8.1 master節點配置鏡像
在主體服務器SQL01.huangjh.com右鍵 -> 「DB01」 -> 「任務」 -> 「鏡像」。
點擊「配置安全性」。
本實驗規劃見證服務器。
勾選「見證服務器實例」,下一步。
配置主題服務器實例及相應端口。
配置鏡像服務器,可經過瀏覽或手動輸入鏡像服務器名稱SLAVE,點擊」鏈接」。
配置鏡像服務器,可經過瀏覽或手動輸入見證服務器名稱ARBIT,點擊」鏈接」。
確認見證服務器及相關端口信息。
輸入實例服務帳戶IMXHY\sqluser,下一步。
確認相關信息。
等待配置端點完成。
點擊「開始鏡像」。
提示:若出現鏡像失敗可在hosts中手動添加相應解析,保證網絡連通性正常。
九 檢查與驗證
9.1 狀態檢查
主體服務器相關數據庫狀態應該爲(主體,已同步)
鏡像服務器相關數據庫狀態應該爲(客體,已同步 / 正在還原..)
提示:對於鏡像數據庫,是不容許刪除和操做。
十 功能驗證
10.1 狀態驗證
在主體服務器MASTER右鍵數據庫「MDB」選擇「任務」—「啓動數據庫鏡像監視器」。
在此頁面可看到數據庫鏡像的同步狀態等。
10.2 故障遷移測試
在主體服務器MASTER右鍵數據庫「MDB」選擇「屬性」,在主體服務器SQL01右鍵數據庫「DB01」選擇「屬性」,選擇頁「鏡像」點擊「故障轉移」。
是。
在SLAVE上確認MDB狀態是否變爲(主體,已同步),可查看相關主體和鏡像服務器已成功切換。
10.3 關機高可用測試
關閉此時的主體服務器,即SLAVE,而後回到MASTER,觀察可知此時自動將主體故障轉移到MASTER中,且鏡像服務器SLAVE,狀態爲」沒有鏈接:沒法鏈接鏡像服務器實例或見證服務器實例」。
將SLAVE開機後恢復正常後,狀態爲」已同步:數據庫已徹底同步」,說明自動故障轉移成功。
參考官方文檔: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