數據庫鏡像是SQL Server 2005 sp1正式引入的一項數據庫級的高可用性技術。數據庫
1、鏡像的實現
安全
鏡像是主體服務器、鏡像服務器和見證服務器(見證服務器爲可選項)之間經過TCP5022端口進行實時通訊從而實現數據同步或監控。服務器
2、鏡像的3種運行模式網絡
1. 高性能(異步)異步
主體服務器上的更改被異步傳送給鏡像服務器。因爲是異步執行,所以對性能的影響很小。ide
2. 高安全(同步)性能
主體服務器上的更改被同步傳送給鏡像服務器,並且只有當這些更改同時主體和鏡像服務器上完成以後主體服務器才能夠繼續下一個更改。優化
3. 高可用(同步)3d
數據的更改模式與高安全模式時相同。此模式必須存在一臺見證服務器,監控主體與鏡像服務器的運行狀態。若是主體服務器變得不可用,則見證服務器會控制自動故障轉移到鏡像服務器。blog
3、鏡像的故障轉移
1. 服務器端
若是有見證服務器,則由見證服務器控制自動故障轉移。也能夠手動控制。
2. 客戶端
因爲鏡像技術沒有采用MSFC做爲底層,所以客戶端直接鏈接在原來的主體服務器。
能夠在客戶端的鏈接字符串中添加鏡像服務器的IP地址,那麼客戶端在鏈接主體服務器失敗時會自動嘗試鏈接鏡像服務器。關於添加鏈接字符器的方法,請參考 http://technet.microsoft.com/zh-cn/library/ms175484.aspx
4、鏡像技術的不足
SQL Server 2012的聯機手冊就已經申明將在將來的版本中取消鏡像技術。鏡像技術主要存在如下不足。
1. 客戶端不能鏈接到一個虛擬網絡名稱。
2. 對於標準版的用戶,鏡像只能使用高安全(同步)模式,一般都會對性能帶來很大的影響。通常在實現鏡像以前都須要對數據庫作一次性能調整與優化。
3. 只能針對單個數據庫。例如,SharePoint用戶但願同時對一組數據庫實現高可用,而鏡像只能一個一個地對數據庫實現。
4. 鏡像服務器上的數據庫一直處於「正在還原」狀態,只能經過建立快照才能實現只讀訪問。