Triệu chứng
Hãy xem xét tình huống sau:
-
Bạn sử dụng Microsoft SQL Server 2016 Gói Dịch vụ 2 (SP2) Bản cập nhật Tích lũy 2 (CU2) hoặc phiên bản mới hơn.
-
Bạn đang chạy phiên bản lưu trữ nhiều cơ sở dữ liệu (thường là hơn 200) và phiên bản này là một phần của Nhóm Luôn Sẵn sàng (AG) (thường với vai trò của máy chủ phụ). Chú ý Tất cả các cơ sở dữ liệu người dùng không cần thuộc AGs.
-
Bạn chạy ứng dụng Volume Shadow Copy Services (VSS) để yêu cầu sao lưu tất cả hoặc một số cơ sở dữ liệu của phiên SQL Server này.
Trong trường hợp này, Dịch vụ Trình viết SQL có thể đạt đến một tình huống đình trệ và vô hạn giữ khóa chống lại một bảng hệ thống nội bộ trong chính (sys.sysdbreg với object_id 28). Hơn nữa, các ổ khóa này lần lượt ngăn đọc từ hệ thống Dạng xem Quản lý Động (DMV) như sys.dm_hadr_database_replica_states và có thể dẫn đến hiện tượng chặn phụ lớn trong trường hợp này. Ngoài ra, bạn nhận thấy rằng phân tích chuỗi khối trả về câu lệnh sau đây có nguồn gốc từ Trình ghi VSS SQL Server như một trình chặn đầu:
"select name, recovery_model_desc, state_desc, CONVERT(integer, is_in_standby), ISNULL(source_database_id,0) from master.sys.databases"
Sau đó SQL Server sẽ có trạng thái chờ ASYNC_NETWORK_IO.
Chú ý Bởi vì chờ ASYNC_NETWORK_IO được thực hiện, các wait_time chống lại nó sẽ không bao giờ vượt quá hai giây (2.000 ms). Tuy nhiên, loại chờ đợi sẽ vẫn ở nguyên vị trí vô hạn và tình huống này sẽ không bao giờ tự bỏ chặn. Nó đòi hỏi bạn phải giết các Dịch vụ Trình viết SQL để bỏ chặn tình hình.
Trong số các SPID bị chặn bởi trình chặn đầu này, thường sẽ có một DBSTARTUP SPID (alwayson Secondary DB redo).
Trạng thái
Microsoft đã xác nhận đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".
Giải pháp
Sự cố này đã được khắc phục trong các bản cập nhật tích lũy sau đây SQL Server:
Giới thiệu về các bản cập nhật tích lũy SQL Server:
Mỗi bản cập nhật tích lũy mới dành cho SQL Server sẽ chứa tất cả các bản cập nhật nóng và tất cả các bản sửa lỗi bảo mật được bao gồm trong bản cập nhật tích lũy trước đó. Xem các bản cập nhật tích lũy mới nhất dành cho doanh SQL Server:
Tham khảo
Tìm hiểu về thuật ngữ mà Microsoft sử dụng để mô tả các bản cập nhật phần mềm.