อาการ
ลองทำตามสถานการณ์ต่อไปนี้:
- คุณเปิดใช้งานคุณลักษณะกลุ่มให้บริการ AlwaysOn ใน Microsoft SQL Server 2014
- ฐานข้อมูล AlwaysOn มีชนิดข้อมูลที่กําหนดโดยผู้ใช้ (UDT) ของรันไทม์ภาษาทั่วไป (CLR) นอกจากนี้ CLR UDT เดียวกันมีอยู่ในฐานข้อมูลมากกว่าหนึ่งฐานข้อมูล
- คุณเรียกใช้คิวรีที่เกี่ยวข้องกับหลายฐานข้อมูลที่มี CLR UDT
ในสถานการณ์นี้ เกิดข้อผิดพลาดการละเมิดการเข้าถึงบนแบบจําลองรอง และอินสแตนซ์ของ SQL Server หยุดทํางานโดยมีข้อความต่อไปนี้ในบันทึกข้อผิดพลาดของ SQL Server:
หมายเหตุ
2015-02-17 13:07:36.85 spid27s กําลังปิดฐานข้อมูลเนื่องจากข้อยกเว้น 2905 ระหว่างการประมวลผล VLR ที่ยอมรับ
2015-02-17 13:07:36.85 ข้อผิดพลาด spid27s: 3449, ความรุนแรง: 21, สถานะ: 1.2015-02-17 13:07:36.85 spid27s SQL Server ต้องปิดเพื่อกู้คืนฐานข้อมูล (ID ฐานข้อมูล 2) ฐานข้อมูลไม่ว่าจะเป็นฐานข้อมูลผู้ใช้ที่ไม่สามารถปิดการทํางานได้ หรือเป็นฐานข้อมูลระบบ รีสตาร์ต SQL Server ถ้าฐานข้อมูลไม่สามารถกู้คืนได้หลังจากเริ่มต้นการทํางานใหม่อีกครั้ง ให้ซ่อมแซมหรือคืนค่าฐานข้อมูล
นอกจากนี้ คุณได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้ในฐานข้อมูลแบบจําลองรองของคุณ และข้อผิดพลาดจะไม่หายไปจนกว่าคุณจะเริ่มการทํางานของ SQL Server ใหม่:
หมายเหตุ
msg 3961, ระดับ 16, สถานะ 1, บรรทัด 3
ทรานแซคชันการแยกสแนปช็อตล้มเหลวในฐานข้อมูล '<DatabaseName>' เนื่องจากวัตถุที่เข้าถึงโดยคําสั่งถูกปรับเปลี่ยนโดยคําสั่ง DDL ในทรานแซคชันพร้อมกันอื่นตั้งแต่เริ่มต้นทรานแซคชันนี้ จึงไม่ได้รับอนุญาต เนื่องจากเมตาดาต้าไม่มีการกําหนดเวอร์ชัน การอัปเดตข้อมูลเมตาพร้อมกันอาจนําไปสู่ความไม่สอดคล้องกันได้หากผสมกับการแยกสแนปช็อต
การแก้ปัญหา
ข้อมูลการอัปเดตสะสม
ปัญหานี้ได้รับการแก้ไขครั้งแรกในการอัปเดตแบบสะสมของ SQL Server ต่อไปนี้
ข้อแนะนํา: ติดตั้งการอัปเดตสะสมล่าสุดสําหรับ SQL Server
การอัปเดตแบบสะสมใหม่แต่ละรายการสําหรับ SQL Server จะมีโปรแกรมแก้ไขด่วนและการแก้ไขข้อบกพร่องด้านความปลอดภัยทั้งหมดที่รวมอยู่ในการอัปเดตแบบสะสมครั้งก่อนหน้า เราขอแนะนําให้คุณดาวน์โหลดและติดตั้งการอัปเดตแบบสะสมล่าสุดสําหรับ SQL Server:
อัปเดตข้อมูลเมื่อต้องการแก้ไขปัญหานี้ ให้ใช้การอัปเดต KB 3043788: มีแพคเกจการอัปเดตการแก้ไขด่วนตามความต้องการสําหรับ SQL Server 2014
สถานะ
Microsoft ได้ยืนยันว่านี่เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ที่แสดงไว้ในส่วน "นำไปใช้กับ"