อาการ
สมมติว่า คุณกําหนดค่าเหตุการณ์การตรวจสอบ SQL Server หลายเพื่อเขียนไปยังบันทึกการรักษาความปลอดภัยใน Microsoft SQL Server 2022, Microsoft SQL Server 2019 หรือ Microsoft SQL Server 2016 Service Pack 2 (SP2) ในสถานการณ์สมมตินี้ คุณสังเกตเห็นว่า การตรวจสอบเซิร์ฟเวอร์ทั้งหมด ยกเว้นการตรวจสอบเซิร์ฟเวอร์ครั้งแรกไม่เขียน นอกจากนี้ เมื่อคุณเพิ่มการตรวจสอบเซิร์ฟเวอร์ที่สอง คุณอาจได้รับข้อความแสดงข้อผิดพลาดที่คล้ายกับข้อความต่อไปนี้ในบันทึกข้อผิดพลาด SQL Server:
ข้อผิดพลาด: 33204 ความรุนแรง: 17 รัฐ: 1
การตรวจสอบ SQL Server ไม่สามารถเขียนลงในบันทึกความปลอดภัยได้
สาเหตุ
ปัญหานี้เกิดขึ้นหากค่าสถานะแหล่งเหตุการณ์รีจิสทรีถูกตั้งค่าเป็น 0
วิธีแก้ไขปัญหาชั่วคราว
เมื่อต้องการแก้ไขปัญหานี้ ให้ใช้วิธีใดวิธีหนึ่งต่อไปนี้:
-
ตั้งค่าเหตุการณ์การตรวจสอบเซิร์ฟเวอร์ให้เขียนลงในไฟล์แทนการบันทึกความปลอดภัยของ SQL Server
-
เมื่อต้องการเปิดใช้งานเหตุการณ์การตรวจสอบเซิร์ฟเวอร์หลายรายการเพื่อเขียนลงในบันทึกความปลอดภัยของ SQL Server ให้เปลี่ยนค่าของคีย์ย่อยรีจิสทรีต่อไปนี้จาก 0 เป็น 1:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Security\MSSQL$<InstanceName>$Audit\EventSourceFlags
หมายเหตุ: ต้องเริ่มการตรวจสอบเซิร์ฟเวอร์ใหม่เพื่อให้การตั้งค่ารีจิสทรีใหม่มีผล
ALTER SERVER AUDIT [AuditName] WITH (STATE = OFF) GO ALTER SERVER AUDIT [AuditName] WITH (STATE = ON) GO
สิ่งสำคัญ: การแก้ไขรีจิสทรีอย่างไม่ถูกต้องอาจทําให้ระบบของคุณเสียหายอย่างร้ายแรงได้ ก่อนที่คุณจะทําการเปลี่ยนแปลงรีจิสทรี เราขอแนะนําให้คุณสํารองข้อมูลที่มีค่าใดๆ บนคอมพิวเตอร์
การแก้ไข
ปัญหานี้ได้รับการแก้ไขแล้วในการอัปเดตแบบสะสมต่อไปนี้สําหรับ SQL Server:
หมายเหตุ: แม้หลังจากติดตั้ง SQL Server 2022 Cumulative Update 6 (CU6) หรือเวอร์ชันที่ใหม่กว่าสําหรับอินสแตนซ์ที่มีอยู่ การแก้ไขปัญหาชั่วคราวยังจําเป็นเนื่องจากการแก้ไขไม่ได้เปลี่ยนค่ารีจิสทรีที่มีอยู่ สําหรับอินสแตนซ์ใหม่ จะใช้ค่ารีจิสทรีที่ถูกต้องหลังจากนําการแก้ไขไปใช้
แต่ละการอัปเดตสะสมใหม่สําหรับ SQL Server ประกอบด้วยการแก้ไขด่วนและการแก้ไขข้อบกพร่องด้านความปลอดภัยทั้งหมดที่อยู่ในรุ่นก่อนหน้า เราขอแนะนําให้คุณติดตั้งรุ่นล่าสุดสําหรับ SQL Server เวอร์ชันของคุณ:
ข้อมูล Service Pack สําหรับ SQL Server 2016
ปัญหานี้ได้รับการแก้ไขแล้วใน Service Pack ต่อไปนี้สําหรับ SQL Server:
Service Pack เป็นแบบสะสม Service Pack ใหม่แต่ละตัวจะมีการแก้ไขทั้งหมดที่อยู่ใน Service Pack รุ่นก่อนหน้า พร้อมกับการแก้ไขใหม่ๆ คําแนะนําของเราคือการใช้ Service Pack ล่าสุดและการอัปเดตแบบสะสมล่าสุดสําหรับ Service Pack นั้น คุณไม่จําเป็นต้องติดตั้ง Service Pack รุ่นก่อนหน้าก่อนที่คุณจะติดตั้ง Service Pack รุ่นล่าสุด ใช้ตารางที่ 1 ในบทความต่อไปนี้สําหรับการค้นหาข้อมูลเพิ่มเติมเกี่ยวกับ Service Pack ล่าสุดและการอัปเดตแบบสะสมล่าสุด
วิธีการระบุเวอร์ชัน รุ่น และระดับการอัปเดตของ SQL Server และคอมโพเนนต์ของ SQL Server
สถานะ
Microsoft ยืนยันว่าปัญหานี้เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ซึ่งมีการระบุไว้ในส่วน "นำไปใช้กับ"
อ้างอิง
เรียนรู้เกี่ยวกับ คําศัพท์ ที่ Microsoft ใช้เพื่ออธิบายการอัปเดตซอฟต์แวร์