ฉันใช้ SQL Server 2014 Developer Edition บนพีซีของฉัน ฉันกำลังพยายามดูข้อมูลในเซสชัน system_health ใน SSMS ฉันได้เชื่อมต่อกับฐานข้อมูลขยายเซิร์ฟเวอร์ / การจัดการ / เหตุการณ์ขยาย / เซสชัน ฉันเห็น AlwaysON_health (หยุดทำงาน) และ system_health (กำลังทำงาน)
เมื่อฉันคลิกขวาที่เซสชัน system_health ฉันได้รับข้อผิดพลาดต่อไปนี้:
ที่เก็บข้อมูลล้มเหลวในการเริ่มต้นโดยใช้พารามิเตอร์ที่ให้มา (Microsoft.SqlServer.XEventStorage) ไม่พบเซสชันเพิ่มเติมที่ชื่อว่า "system_health" ตรวจสอบให้แน่ใจว่าเซสชันนั้นมีอยู่และเริ่มขึ้นแล้ว (Microsoft SQL Server ข้อผิดพลาด: 25728)
ฉันขยาย system_health และดูเป้าหมาย package0.event_file และ package0.ring_buffer หากฉันคลิกขวาที่เป้าหมายและเลือก "ดูข้อมูลเป้าหมาย" ฉันได้รับข้อผิดพลาดนี้:
ที่เก็บข้อมูลล้มเหลวในการเริ่มต้นโดยใช้พารามิเตอร์ที่ให้มา (Microsoft.SqlServer.XEventStorage) ไม่สามารถดูฟังก์ชัน 'fn_MSXe_read_event_stream' ได้เนื่องจากไม่มีอยู่หรือคุณไม่มีสิทธิ์ใช้งาน (Microsoft SQL Server ข้อผิดพลาด: 15151)
มีฟังก์ชั่นอยู่ ฉันสามารถเรียกใช้:
select * from fn_MSXe_read_event_stream('system_health', 0);
เมื่อฉันทำฉันได้รับข้อผิดพลาดนี้:
Msg 25728, Level 16, State 10, Line 6
The Extended Events session named "system_health" could not be found. Make sure the session exists and is started.
ฉันรู้ว่าเซสชัน system_health อยู่ที่นั่น ฉันเห็นในรายการเซสชัน:
select * from sys.dm_xe_sessions
address name name
------------------ -------------
0x00000001FF6510C1 system_health
ฉันลองสิ่งนี้ด้วยเซสชันเหตุการณ์ที่กำหนดเองของฉันเอง ฉันไม่สามารถดูข้อมูลสดได้
ฉันสามารถสอบถามข้อมูลเป้าหมาย system_health buffer sys.dm_xe_session_targets
แหวนจาก
เหตุใดฉันจึงไม่สามารถดูข้อมูลสดสำหรับเซสชันที่ขยายเพิ่มเติมได้
(โปรดทราบว่ามีรายการข้อเสนอแนะของ Microsoftสำหรับปัญหานี้)
master
ฐานข้อมูลเริ่มต้นการเข้าสู่ระบบของฉันถูกกำหนดให้หนึ่งที่ผมมักจะใช้แทน การตั้งค่าฐานข้อมูลเริ่มต้นของฉันกลับไปmaster
แก้ไขข้อผิดพลาด