如何鏡像資料庫 Mirror SQL Server,實作資料庫鏡像 ( Database Mirroring )
鏡像其實不難,只要確認好資料庫環境,就可以利用 SSMS 所提供的設定精靈Step by step 的完成。在開始之前,還是建議爬一下官方的說明文件,裡頭已經有很詳盡的概念說明( 雖然都是英文 ),但是如果看示意圖來理解的話,其實也可以了解個大概,接下來實作如何設定鏡像吧。
ㄧ、環境
SERVER 1 : SQL Server 2012 R2
SERVER 2 : SQL Server 2012 R2
Witness SSERVER : SQL Server R2
在高可用性的鏡像中,會有一個伺服器負責監控 SERVER1 和 SERVER 2,當 SERVER1 ( Principle ) 掛掉的時候,自動幫你切換到 SERVER2 ( Mirror )
可以看到 Witness Server 並不負責資料流,所有的資料流只會在 SERVER1 和 SERVER 2 傳遞。
二、前置動作
請先備份 SERVER 1資料庫到 SERVER 2,可以利用下面的TSQL備份
--備份資料庫
BACKUP DATABASE "Your database" TO DISK = N'C:\yourpath.bak'
--備份LOG
BACKUP LOG "LOG Name" TO DISK = N'C:\yourpath.trn'
記得在還原資料庫和LOG的時候要選 WITH NORECOVERY。
三、鏡像
1. 登入Principle Server (主要伺服器),並選擇需要鏡像的資料庫。
2. 分別指定設定 Principle、Mirror、Witness Server
3. 直接選 Finish 即可
4. 選 Start Mirroring
5. 完成後即可看到 Principle 後面有 Synchronized 的字樣