KB3042370 - Bản sao phụ AlwaysOn gặp sự cố hoặc phát sinh lỗi 3961 khi cơ sở dữ liệu AlwaysOn có CLR UDT trong SQL Server 2014

Áp dụng cho
SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Triệu chứng

Hãy cân nhắc các trường hợp sau:

  • Bạn bật tính năng Nhóm Ứng dụng AlwaysOn trong Microsoft SQL Server 2014.
  • Cơ sở dữ liệu AlwaysOn có kiểu dữ liệu do người dùng xác định (UDT) thời gian chạy ngôn ngữ chung (CLR). Ngoài ra, cùng một UDT CLR cùng tồn tại trong nhiều cơ sở dữ liệu.
  • Bạn chạy một truy vấn liên quan đến nhiều cơ sở dữ liệu có CLR UDT.

Trong kịch bản này, lỗi vi phạm quyền truy nhập xảy ra trên bản sao phụ và phiên bản của SQL Server gặp sự cố với thông báo sau trong nhật ký lỗi SQL Server:

Lưu ý

2015-02-17 13:07:36.85 spid27s Tắt cơ sở dữ liệu do ngoại lệ 2905 trong quá trình xử lý VLR tại cam kết.

2015-02-17 13:07:36.85 Lỗi SPID27s: 3449, Mức độ nghiêm trọng: 21, Trạng thái: 1.2015-02-17 13:07:36.85 SPID27s SQL Server phải tắt để khôi phục cơ sở dữ liệu (ID cơ sở dữ liệu 2). Cơ sở dữ liệu là cơ sở dữ liệu người dùng không thể tắt hoặc cơ sở dữ liệu hệ thống. Khởi động lại SQL Server. Nếu cơ sở dữ liệu không phục hồi được sau một lần khởi động khác, hãy sửa chữa hoặc khôi phục cơ sở dữ liệu đó.

Ngoài ra, bạn sẽ nhận được thông báo lỗi sau trong cơ sở dữ liệu bản sao phụ của mình và lỗi này sẽ không biến mất cho đến khi bạn khởi động lại SQL Server:

Lưu ý

Thông báo 3961, Mức 16, Trạng thái 1, Dòng 3
Giao tác tách biệt ảnh chụp nhanh không thành công trong cơ sở dữ liệu 'DatabaseName><' vì đối tượng được truy cập bởi câu lệnh đã được sửa đổi bởi câu lệnh DDL trong một giao dịch đồng thời khác kể từ khi bắt đầu giao dịch này. Không được phép vì siêu dữ liệu chưa được lập phiên bản. Cập nhật đồng thời cho siêu dữ liệu có thể dẫn đến mâu thuẫn nếu kết hợp với cách ly ảnh chụp nhanh.

        
      

Giải pháp

Thông tin Cập nhật Tích lũy

Sự cố này được khắc phục lần đầu tiên trong bản cập nhật tích lũy tiếp theo của SQL Server.

Đề xuất: Cài đặt bản cập nhật tích lũy mới nhất cho SQL Server

Mỗi bản cập nhật tích lũy mới dành cho SQL Server chứa tất cả các bản sửa lỗi nóng và bản sửa lỗi bảo mật được tích hợp trong bản cập nhật tích lũy trước đó. Chúng tôi khuyên bạn nên tải xuống và cài đặt các bản cập nhật tích lũy mới nhất cho SQL Server:

      

Thông tin cập nhật Để giải quyết sự cố này, hãy áp dụng bản cập nhật KB 3043788: Đã có gói cập nhật hotfix theo yêu cầu dành cho SQL Server 2014.

Trạng thái

Microsoft đã xác nhận rằng đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong mục "áp dụng cho".