刪除alwayson主節點一個表的統計資訊導致一個輔助節點的同步延遲

ywxj_001發表於2017-11-02
環境:
sqlserver2014 alwayson架構
一個輔助節點丟失統計資訊。
使用者在客戶端透過連結伺服器查詢一個輔助節點的表的資訊。
select * from [10.0.0.100].[hr].table1
報錯:

查詢到輔助節點10.0.0.100上面的這個table1表的統計資訊_WA_Sys_00000091_28B9D11F裡面的資訊丟失。

處理辦法:
去主節點drop這個表的統計資訊。
drop statistics dbo.table1._WA_Sys_00000091_28B9D11F

drop完成後,再在客戶端透過連結伺服器查詢這個輔助節點上這個表table1就正常了。

但是卻導致另外一個輔助節點在查詢這個表的SQL出現了
LCK_M_SCH_S的wait_type
這句SQL也是在查詢table1表。

另外也導致一個事務在這個輔助節點一直沒有完成。

而alwayson的同步也出現了問題:


從時間點來看:
進行drop主節點那個表的統計資訊、發生SQL的LCK_M_SCH_S的wait_type、事務一直沒有釋放、alwayson同步不正常。
在這期間table1表產生了很多的阻塞。
導致問題是,在出現同步問題的這個輔助節點的查詢資料和主節點出現不一致問題。

最後沒有采取什麼辦法,到了15點後,那個事務自己釋放後同步自動恢復了。
因為這個時間table1表有很多的死鎖,判斷是deadlock的發生釋放了這個事務,恢復了同步。 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22996654/viewspace-2146738/,如需轉載,請註明出處,否則將追究法律責任。

相關文章