SQL Server 2012的資料庫鏡像功能在標準版與企業版中皆有提供,兩者的差異在於前者必須手動容錯切換,而後者可自動容錯切換。如今坊間的圖書幾乎都是以企業版作為實例,但是在實務上絕大多數的企業所使用的卻是標準版。如何破解這道難題,且看本文從入門安裝到進階講解,為讀者揭開SQL Server 2012標準版的資料庫鏡像實戰分享。
接下來,假設原先的第一部SQL Server又恢復正常,因此如圖43所示在它的「服務」管理員介面中將其相關服務啟動。
|
▲圖43 啟動原主機SQL服務。 |
如圖44所示,可以發現目前第一部與第二部的SQL Server 2012,服務皆是正常啟動的,不過兩者的鏡像角色是對調的,在這樣的狀態下,如何讓它們可以繼續進行鏡像的同步呢?
|
▲圖44 點選資料庫選單。 |
首先,在目前擔任主體的資料庫上按一下滑鼠右鍵,然後依序點選快速選單中的【工作】→【鏡像】選項。
如圖45所示,在「鏡像」頁面中會發現目前資料庫鏡像的狀態是暫停的,必須按下〔繼續〕按鈕來恢復運作。
|
▲圖45 檢視鏡像狀態。 |
除了以上的方法,也可以在SQL查詢視窗內下達「ALTER DATABASE [資料庫名稱] SET PARTNER RESUME」,讓資料庫鏡像繼續同步。
按下〔繼續〕按鈕時,將會出現如圖46所示的訊息頁面,主要是提示會發生此類事件的可能原因,並且提醒操作者某些尚未傳送的交易記錄將會發生遺失的狀況,因此必須特別注意。
|
▲圖46 繼續鏡像。 |
而圖47所示是成功恢復資料庫鏡像同步的狀態訊息。如果發生失敗,極有可能是網路連線問題所造成的。
|
▲圖47 鏡像同步中。 |
由於在SQL Server鏡像備援的架構中,主機的硬體規格可以是不一樣的,也就是說,可以讓擔任備援的鏡像主機採用較低規格的硬體來節省建置成本,畢竟備援主機往往只是用以暫時替代主要伺服器的運行。
如此一來,當主要的伺服器完成修復,並且在恢復鏡像的同步之後,可能需要再將兩部SQL Server的鏡像角色切換回來。
做法很簡單,只要在上一個步驟中按下〔容錯移轉〕按鈕,便會出現如圖48所示的訊息頁面,其內容主要是提醒,在容錯移轉過程中,現有連線到目前主要資料庫的工作階段將會被迫中斷。確認後,按下〔是〕按鈕即可。
|
▲圖48 容錯移轉。 |
如圖49所示,便是成功完成資料庫鏡像容錯移轉的結果,在「物件總管」窗格內可以發現,目前兩部SQL Server執行個體中的鏡像資料庫角色已經恢復成原來的角色狀態了。
|
▲圖49 完成容錯移轉。 |
關於前面步驟中所進行的模擬測試,範例中是以在查詢視窗中下達SQL命令參數的方法來完成鏡像資料庫的角色切換。
然而,這樣的做法在實務上可能會覺得有些不方便,該怎麼辦呢?不妨將這些命令參數寫成一個批次檔來執行。