SQLServer 2012中設置AlwaysOn解決網絡抖動導致的提交延遲問題
事件起因:近期有研發(fā)反應,某數據庫從08切換到12環(huán)境后,不定期出現寫操作提交延遲的問題;
事件分析:在排除了系統(tǒng)資源爭用等問題后,初步分析可能由于網絡抖動導致同步模式alwayson節(jié)點經常出現會話超時等待提交的問題導致。

經過排查,擴展事件里發(fā)現不定期出現35202錯誤,這是一條副本連接恢復的消息。


由于機房網絡環(huán)境復雜,數據庫服務器和應用服務器混用一個交換機,在業(yè)務高峰期時,因上聯端口流量打滿而導致連接失敗的情況屢有發(fā)生。
既然短期內無法改造網絡環(huán)境,那就從SQLSERVER服務器自身出發(fā),只對數據同步的部分進行改造;
現有環(huán)境:
SQL AG:為兩節(jié)點的同步模式,兩個節(jié)點各有一塊網卡連接到交換機,沒有直連心跳線(WSFC也不再要求有獨立的心跳網絡)
改造方案:
1、兩個節(jié)點各啟用一塊網卡,采用直連方式進行通信,同時配置私有地址
Server_A:10.0.0.11
Server_B:10.0.0.12
2、刪除兩個節(jié)點的endpoint,手動重新創(chuàng)建Listener_IP為直連IP的endpoint
3、更改AG中,每個副本的endpoint_url
4、等待數據重新同步;
其中第三步的腳本如下,要在兩個節(jié)點上分別操作,注意Listener_IP為直連網卡的IP
/****** Object: Endpoint [Hadr_endpoint] Script Date: 2015/1/6 16:06:17 ******/
DROP ENDPOINT [Hadr_endpoint]
GO
/****** Object: Endpoint [Hadr_endpoint] Script Date: 2015/1/6 16:06:17 ******/
CREATE ENDPOINT [Hadr_endpoint]
STATE=STARTED
AS TCP (LISTENER_PORT = 5022, LISTENER_IP = (10.0.0.11))
FOR DATA_MIRRORING (ROLE = ALL, AUTHENTICATION = WINDOWS NEGOTIATE
, ENCRYPTION = REQUIRED ALGORITHM AES)
GO
第四步的腳本如下,在主副本執(zhí)行即可
ALTER AVAILABILITY GROUP [Alwayson01]
MODIFY REPLICA ON N'Node_01' WITH (ENDPOINT_URL = N'TCP://10.0.0.11:5022')
ALTER AVAILABILITY GROUP [Alwayson01]
MODIFY REPLICA ON N'Node_02' WITH (ENDPOINT_URL = N'TCP://10.0.0.12:5022')
注意:刪除endpoint后兩副本即為未同步狀態(tài),但偵聽器和AG組中的數據庫不受影響,對應用而言,主副本的服務仍然正常;
相關文章
由于系統(tǒng)錯誤 126 (SQL Server),指定驅動程序無法加載
今天下午在給客戶安裝用友T3標準版時碰到一個非常棘手的問題,MSDE2000數據庫和用友T3軟件都安裝好了,但是打開系統(tǒng)管理的時候提示:AUTOMATION錯誤,然后將數據庫徹底卸載干凈,用友通T3軟件也徹底卸載干凈,重新安裝了一下,仍然是這個情況2021-03-03
sql server 2000阻塞和死鎖問題的查看與解決方法
在實際引用當中,數據庫阻塞和死鎖在程序開發(fā)過程經常出現,下面通過介紹數據庫阻塞和數據庫死鎖,并提供查看和解決阻塞和死鎖的方法2014-01-01
萬能密碼的SQL注入漏洞其PHP環(huán)境搭建及防御手段
這篇文章主要介紹了萬能密碼的SQL注入漏洞其PHP環(huán)境搭建及防御手段,對此感興趣的小伙伴趕快收藏起來吧2021-09-09
解決MSSQL2005遠程連接sql2000非默認端口數據庫的問題
MSSQL2005連接sql2000非默認端口數據庫的問題給我折騰了快一天了,快瘋了,連接TCP/IP默認1433端口沒問題,連接其他端口數據庫問題有了。2007-11-11
詳解SQL Server數據庫狀態(tài)和文件狀態(tài)
本文通過實例給大家詳解sqlserver數據庫狀態(tài) (database states) 和文件狀態(tài) (database states),非常不錯,具有參考借鑒價值,需要的朋友參考下吧2017-09-09

