SQL Server 2012 數(shù)據(jù)庫鏡像配置完整篇
“數(shù)據(jù)庫鏡像”是一種提高 SQL Server 數(shù)據(jù)庫的可用性的解決方案。 鏡像基于每個數(shù)據(jù)庫實現(xiàn),并且只適用于使用完整恢復(fù)模式的數(shù)據(jù)庫。數(shù)據(jù)庫鏡像維護一個數(shù)據(jù)庫的兩個副本,這兩個副本必須駐留在不同的 SQL Server 數(shù)據(jù)庫引擎 服務(wù)器實例上。 通常,這些服務(wù)器實例駐留在不同位置的計算機上。 啟動數(shù)據(jù)庫上的數(shù)據(jù)庫鏡像操作時,在這些服務(wù)器實例之間形成一種關(guān)系,稱為“數(shù)據(jù)庫鏡像會話”。其中一個服務(wù)器實例使數(shù)據(jù)庫服務(wù)于客戶端(“主體服務(wù)器”), 另一個服務(wù)器實例則根據(jù)鏡像會話的配置和狀態(tài),充當(dāng)熱備用或溫備用服務(wù)器(“鏡像服務(wù)器”)。 具有自動故障轉(zhuǎn)移功能的高安全性模式要求使用第三個服務(wù)器實例,稱為“見證服務(wù)器”。
· 主體服務(wù)器 (principal server)
在數(shù)據(jù)庫鏡像中,是指當(dāng)前作為主體數(shù)據(jù)庫的數(shù)據(jù)庫所屬于的伙伴。
· 鏡像服務(wù)器 (mirror server)
在數(shù)據(jù)庫鏡像配置中,鏡像數(shù)據(jù)庫所在的服務(wù)器實例。
· 見證服務(wù)器 (Witness)
僅用于高安全性模式,SQL Server 的一個可選實例,它能使鏡像服務(wù)器識別何時要啟動自動故障轉(zhuǎn)移。 與這兩個故障轉(zhuǎn)移伙伴不同的是,見證服務(wù)器并不能用于數(shù)據(jù)庫。 見證服務(wù)器的唯一角色是支持自動故障轉(zhuǎn)移。
所有數(shù)據(jù)庫鏡像會話都只支持一臺主體服務(wù)器和一臺鏡像服務(wù)器。 下圖顯示了該配置:

右圖顯示了包含見證服務(wù)器的配置:
整個SQL Server 2012 數(shù)據(jù)庫鏡像的配置分為以下6個小章節(jié)
· 環(huán)境準備
· 安裝數(shù)據(jù)庫功能
· 啟用TCP/IP協(xié)議和RemoteDAC
· 數(shù)據(jù)庫準備工作
· 數(shù)據(jù)庫鏡像配置
· 功能驗證
1. 環(huán)境準備
1.1 本次Demo使用的服務(wù)器清單如下:
No. |
主機名 |
服務(wù)器角色 |
操作系統(tǒng) |
IP地址 |
1 |
DC01.huangjh.com |
AD/DNS |
Windows Server 2012 R2 |
192.168.8.8/24 |
2 |
SQL01.huangjh.com |
數(shù)據(jù)庫服務(wù)器(主體) |
Windows Server 2012 R2
SQL Server Enterprise 2012 SP1 |
192.168.8.10/24 |
3 |
SQL02.huangjh.com |
數(shù)據(jù)庫服務(wù)器 (鏡像) |
Windows Server 2012 R2
SQL Server Enterprise 2012 SP1 |
192.168.8.20/24 |
4 |
SQL03.huangjh.com |
數(shù)據(jù)庫服務(wù)器(見證) |
Windows Server 2012 R2
SQL Server Enterprise 2012 SP1 |
192.168.8.30/24 |
1.2 準備好一臺域控服務(wù)器和三臺數(shù)據(jù)庫服務(wù)器,配置網(wǎng)絡(luò)并加入域huangjh.com
1.3 三臺SQL服務(wù)器需要開放1433和5022端口,為了實驗方便本次Demo直接手動關(guān)閉防火墻

2. 安裝數(shù)據(jù)庫功能
2.1 在SQL01、SQL02和SQL03三臺數(shù)據(jù)庫服務(wù)器,打開服務(wù)器管理器并根據(jù)向?qū)瓿?SPAN lang=EN-US>.Net framework 3.5的安裝



2.2在SQL01、SQL02和SQL03三臺數(shù)據(jù)庫服務(wù)器分別插入并運行SQL Server 2012 Enterprise SP1安裝程序,點擊“安裝”—“全新SQL Server獨立安裝或向現(xiàn)有安裝添加功能”,根據(jù)向?qū)瓿?SPAN lang=EN-US>SQL功能的安裝

2.3 在”功能選擇”頁面,根據(jù)實際應(yīng)用需求勾選所需的功能,下一步

2.4 在”服務(wù)器配置”頁面,修改服務(wù)賬戶為域賬戶(確保該賬戶密碼永不過期),啟動類型為”自動”

2.5 根據(jù)向?qū)г?SPAN lang=EN-US>SQL01、SQL02、SQL03完成數(shù)據(jù)庫功能的成功安裝

3. 啟用TCP/IP協(xié)議和RemoteDAC
3.1 在SQL01、SQL02、SQL03中分別打開SQL Server配置管理器,啟用TCP/IP協(xié)議

3.2 在SQL01、SQL02、SQL03中分別打開SQL Server Management Studio,右鍵實例選擇“方面”

3.3 選擇“外圍應(yīng)用配置器”—將屬性“RemoteDACEnabled”的值改為“True”



4. 數(shù)據(jù)庫準備工作(創(chuàng)建、備份和還原數(shù)據(jù)庫)
4.1 在SQL01(主體服務(wù)器)右鍵”數(shù)據(jù)庫”—“新建數(shù)據(jù)庫”

4.2 在”常規(guī)“頁面輸入數(shù)據(jù)庫名稱

4.3 在”選項”頁面確;謴(fù)模式為”完整“

4.4 右鍵”DB01”選擇”任務(wù)“—”備份“

4.5 備份類型選擇”完整“,點擊”確定“

4.6 備份成功完成后點擊”確定“

4.7 選擇備份類型為”事務(wù)日志“,點擊”確定“完成對事務(wù)日志的備份

4.8 將備份文件拷貝到鏡像服務(wù)器SQL02.huangjh.com對應(yīng)的路徑,默認備份路徑為
“C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup”

4.9 在鏡像服務(wù)器SQL02.huangjh.com打開SQL Server Management Studio,右鍵“數(shù)據(jù)庫”選擇“創(chuàng)建數(shù)據(jù)庫”

4.10 輸入數(shù)據(jù)庫名稱,點擊“確定”(此數(shù)據(jù)庫名稱必須與SQL01中創(chuàng)建的數(shù)據(jù)庫名稱保持一致)

4.11 右鍵新創(chuàng)建的數(shù)據(jù)庫“DB01”--選擇“任務(wù)”—“還原”—“數(shù)據(jù)庫”

4.12 選擇“設(shè)備”,點擊右邊“…”

4.13 點擊”添加”

4.14 選擇剛才從SQL01復(fù)制的備份文件,點擊”確定”

4.15 點擊“確定”

4.16 勾選要還原的備份集

4.17 在“選項”頁面勾選“覆蓋現(xiàn)有數(shù)據(jù)庫”,恢復(fù)狀態(tài)選擇“RESTORE WITH NORECOVERY”,取消勾選“還原前進行結(jié)尾日志備份”,點擊“確定”

4.18 點擊“確定”

4.19 數(shù)據(jù)庫DB01顯示”正在還原…“

5. 數(shù)據(jù)庫鏡像配置
5.1 在主體服務(wù)器SQL01.huangjh.com右鍵“DB01”選擇“任務(wù)”—“鏡像”

5.2 點擊“配置安全性”

5.3 下一步

5.4 選擇“是”,下一步

5.5 勾選“見證服務(wù)器實例”,下一步

5.6 下一步

5.7 點擊“瀏覽更多”

5.8 輸入鏡像服務(wù)器名稱SQL02,點擊”連接”

5.9 選擇鏡像服務(wù)器實例SQL02,下一步

5.10 同樣選擇見證服務(wù)器實例SQL03,下一步

5.11 輸入實例服務(wù)賬戶huangjh\administrator,下一步

5.12 點擊“完成”

5.13 成功配置后,點擊”關(guān)閉”

5.14 點擊“開始鏡像”

5.15 狀態(tài)為“已同步:數(shù)據(jù)庫已完全同步”,點擊“確定”

5.16 在主體服務(wù)器SQL01看到的數(shù)據(jù)庫狀態(tài)為”主體,正在同步”

5.17 在鏡像服務(wù)器SQL02看到的數(shù)據(jù)庫狀態(tài)為”正在還原…”

6. 功能驗證
6.1 在主體服務(wù)器SQL01右鍵數(shù)據(jù)庫“DB01”選擇“任務(wù)”—“啟動數(shù)據(jù)庫鏡像監(jiān)視器”

6.2 在此頁面可看到數(shù)據(jù)庫鏡像的同步狀態(tài)等

6.3在主體服務(wù)器SQL01右鍵數(shù)據(jù)庫“DB01”選擇“屬性”

6.4 在選擇頁“鏡像”點擊“故障轉(zhuǎn)移”

6.5 點擊“是”

6.6 此時主體服務(wù)器為SQL02,鏡像服務(wù)器SQL01,說明手動故障轉(zhuǎn)移成功

6.7 將SQL02(此時的主體服務(wù)器)關(guān)機,此時自動將主體故障轉(zhuǎn)移到SQL01中

6.8 此時又回到了原先的主體服務(wù)器SQL01,鏡像服務(wù)器SQL02,狀態(tài)為”沒有連接:無法連接鏡像服務(wù)器實例或見證服務(wù)器實例”

6.9 將SQL02開機后恢復(fù)正常后,狀態(tài)為”已同步:數(shù)據(jù)庫已完全同步”,說明自動故障轉(zhuǎn)移成功。
