程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> sqlserver數據庫如何巧用AlwaysOn暫停技術

sqlserver數據庫如何巧用AlwaysOn暫停技術

編輯:關於SqlServer
 

隨著AlwaysOn技術的流行,關於AlwayOn的問題也越來越多。目前,我們經常碰到有這樣的客戶,他們需要對某些應用程序進行測試,測試會修改數據庫的一些數據,如果測試通過,就提交,如果測試不通過,就需要回滾。那麼AlwaysOn隨帶了一個新功能:掛起數據移動,就可以解決客戶這種問題,下面來介紹此功能的作用。

一   掛起數據移動

某企業現想在空閒的時候對應用程序進行修改測試,因為環境是一套AlwaysOn環境,因此可先將數據同步暫停,這時就可以選擇掛起數據移動這個功能,修改後的數據就不會同步到其他副本;如下圖,右鍵掛起數據移動。
http://images2015.cnblogs.com/blog/951059/201605/951059-20160506160924044-1900903586.jpg

二   對數據進行修改

1.    將主副本掛起後,對此數據庫的數據進行修改,如下測試庫,查找產品表的數據,單價如圖:
http://images2015.cnblogs.com/blog/951059/201605/951059-20160506161404966-3917107.jpg
2.    現對此單價字段進行修改,將所有的單價全部修改為1,如下圖:
http://images2015.cnblogs.com/blog/951059/201605/951059-20160506161758060-177182543.jpg
3.    修改結束之後,進行測試,測試通過,此時輔助副本上的數據還是掛起數據移動之前的數據,這樣只需將數據恢復移動就可以同步到其他輔助副本:
http://images2015.cnblogs.com/blog/951059/201605/951059-20160506163100997-2031570245.jpg
4.    但是如果經過測試,發現此單價為1會導致重大錯誤,想改回原來的價格,此時就需要對數據進行回滾

三   進行故障轉移

此時主副本上的數據已經被修改,屬於錯誤數據,因為在修改之前選擇了將數據掛起移動,查看發現輔助副本上的數據沒有發生改變,根據AlwaysOn數據同步機理,選擇將輔助副本變為主副本之後再進行數據同步,可將原主副本上的數據修改回來:
http://images2015.cnblogs.com/blog/951059/201605/951059-20160506162750076-1635525650.jpg
http://images2015.cnblogs.com/blog/951059/201605/951059-20160506162902732-249116955.jpg

四   恢復數據移動

故障轉移切換完成後,將原主副本上的可用性數據庫右鍵恢復數據庫移動:
http://images2015.cnblogs.com/blog/951059/201605/951059-20160506163100997-2031570245.jpg
然後等待片刻,可以看到,所有副本上的數據都恢復到了掛起數據移動前的狀態:
http://images2015.cnblogs.com/blog/951059/201605/951059-20160506163309435-1150761260.jpg

五   總結

AlwaysOn的掛起數據移動功能可以應用在很多場合,方便好使,不同於其他的高可用技術,AlwaysOn的這個功能可以人工對數據的同步進行控制,而像鏡像等高可用,無法進行人為控制,如果發生誤操作,數據很快就會同步過去,再想恢復數據,只能通過備份進行恢復,耗費時間和人力。  
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved