Bạn hiện đang ngoại tuyến, hãy chờ internet để kết nối lại

Khắc phục: Thông báo lỗi khi bạn sử dụng phiên họp kéo dài sự kiện system_health để nắm bắt một đồ thị bế tắc trong SQL Server 2008: "Msg 9436 người: phân tích cú pháp XML: dòng 54, nhân vật 1...

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

978629
Microsoft phân phối bản sửa lỗi Microsoft SQL Server 2008 như là một tải về tệp. Bởi vì các bản sửa lỗi tích lũy, mỗi bản phát hành mới có chứa tất cả các hotfix và tất cả các sửa lỗi bảo mật mà được đính kèm với trước SQL Server 2008 sửa chữa phát hành.
TRIỆU CHỨNG
Hãy xem xét kịch bản sau đây. Trong cơ sở dữ liệu Microsoft SQL Server 2008, một bế tắc xảy ra. Sau đó, bạn sử dụng các system_health Mở rộng phiên họp sự kiện để nắm bắt các đồ thị bế tắc. Trong tình huống này, bạn nhận được thông báo lỗi sau:
Msg 9436 người, tầng 16, bang 1, dòng 1
Phân tích cú pháp XML: dòng 54, nhân vật 12, thẻ end không khớp với từ khóa bắt đầu
Ví dụ, bạn chạy truy vấn sau đây để xuất khẩu mục tiêu buffer_ring từ các system_health Phiên làm việc khi một bế tắc xảy ra:
select XEventData.XEvent.value('(data/value)[1]', 'varchar(max)') as DeadlockGraphFROM(select CAST(target_data as xml) as TargetDatafrom sys.dm_xe_session_targets stjoin sys.dm_xe_sessions s on s.address = st.event_session_addresswhere name = 'system_health') AS DataCROSS APPLY TargetData.nodes ('//RingBufferTarget/event') AS XEventData (XEvent)where XEventData.XEvent.value('@name', 'varchar(4000)') = 'xml_deadlock_report'
Trong ví dụ này, các truy vấn trả về kết quả chính xác.

Tuy nhiên, bạn cũng có thể chạy các truy vấn sau đây để đúc đồ thị bế tắc này ở định dạng XML:
select cast(XEventData.XEvent.value('(data/value)[1]', 'varchar(max)') as xml) as DeadlockGraphFROM(select CAST(target_data as xml) as TargetDatafrom sys.dm_xe_session_targets stjoin sys.dm_xe_sessions s on s.address = st.event_session_addresswhere name = 'system_health') AS DataCROSS APPLY TargetData.nodes ('//RingBufferTarget/event') AS XEventData (XEvent)where XEventData.XEvent.value('@name', 'varchar(4000)') = 'xml_deadlock_report'
Trong tình huống này, bạn mong đợi để xem đồ thị bế tắc ở định dạng XML. Thậm chí nếu đồ thị bế tắc được hiển thị không chính xác, bạn vẫn mong đợi để xem hiệu lực XML nội dung từ các báo cáo của xml_deadlock_report. Tuy nhiên, bạn nhận được thông báo lỗi sau:
Msg 9436 người, tầng 16, bang 1, dòng 1
Phân tích cú pháp XML: dòng 54, nhân vật 12, thẻ end không khớp với từ khóa bắt đầu
NGUYÊN NHÂN
Vấn đề này xảy ra bởi vì đường dẫn mã mà tạo ra giản đồ XML cho đồ thị bế tắc bỏ qua trên thẻ đóng cửa của các nạn nhân danh sách nguyên tố. Ngoài ra, đường dẫn mã cho biết thêm một từ khóa không cần thiết cho các bế tắc nguyên tố.
GIẢI PHÁP
Sửa chữa cho vấn đề này lần đầu tiên phát hành Cumulative Update 6 cho SQL Server 2008 Service Pack 1. Để biết thêm chi tiết về gói này cumulative update, nhấp vào số bài viết sau đây để xem bài viết trong cơ sở kiến thức Microsoft:
977443 Tích lũy gói 6 cho SQL Server 2008 Service Pack 1
Chú ý Bởi vì các bản xây dựng tích lũy, mỗi sửa chữa mới phát hành chứa tất cả các hotfix và tất cả các sửa lỗi bảo mật mà được đính kèm với trước SQL Server 2008 sửa chữa phát hành. Chúng tôi khuyên bạn nên cân nhắc việc áp dụng bản vá lỗi mới nhất có chứa hotfix này. Để biết thêm thông tin, hãy bấm vào số bài viết sau để xem bài viết trong Cơ sở Kiến thức Microsoft:
970365 SQL Server 2008 xây dựng được phát hành sau khi SQL Server 2008 Service Pack 1 đã được phát hành
Microsoft SQL Server 2008 hotfixes được tạo ra cho cụ thể SQL Server service pack. Bạn phải áp dụng một hotfix SQL Server 2008 Service Pack 1 cho tiến trình cài đặt SQL Server 2008 Service Pack 1. Theo mặc định, bất kỳ hotfix được cung cấp trong gói dịch vụ máy chủ SQL được bao gồm trong gói dịch vụ tiếp theo của SQL Server.

SQL Server 2008 R2

Quan trọng Bạn phải cài đặt bản vá này nếu bạn đang chạy SQL Server 2008 R2.

Sửa chữa cho vấn đề này lần đầu tiên được phát hành trong Cumulative Update 1. Để biết thêm chi tiết về làm thế nào để có được điều này gói cumulative update cho SQL Server 2008 R2, hãy nhấp vào số bài viết sau đây để xem bài viết trong cơ sở kiến thức Microsoft:

981355 Tích lũy gói 1 cho SQL Server 2008 R2
Chú ý Bởi vì các bản xây dựng tích lũy, mỗi sửa chữa mới phát hành chứa tất cả các hotfix và sửa chữa tất cả các sửa lỗi bảo mật mà được đính kèm với trước SQL Server 2008 R2 phát hành. Chúng tôi khuyên bạn nên cân nhắc việc áp dụng bản vá lỗi mới nhất có chứa hotfix này. Để biết thêm thông tin, hãy bấm vào số bài viết sau để xem bài viết trong Cơ sở Kiến thức Microsoft:

981356 SQL Server 2008 R2 xây dựng được phát hành sau khi SQL Server 2008 R2 được phát hành

TÌNH TRẠNG
Microsoft đã xác nhận rằng đây là một vấn đề trong các sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".
THAM KHẢO
Để có thông tin về các mô hình dịch vụ gia tăng cho SQL Server, bấm số bài viết sau đây để xem bài viết trong cơ sở kiến thức Microsoft:
935897 Mô hình Dịch vụ Gia tăng hiện do nhóm SQL Server cung cấp để phân phối các hotfix cho những sự cố đã báo cáo

Để biết thêm thông tin về giản đồ đặt tên dành cho các gói cập nhật SQL Server, hãy bấm vào số bài viết sau đây để xem bài viết trong Cơ sở Kiến thức Microsoft:
822499Giản đồ đặt tên mới dành cho các gói cập nhật phần mềm Microsoft SQL Server

Để biết thêm thông tin về thuật ngữ cập nhật phần mềm, hãy bấm vào số bài viết sau để xem bài viết trong Cơ sở Kiến thức Microsoft:
824684 Mô tả thuật ngữ chuẩn được sử dụng để mô tả các bản cập nhật phần mềm của Microsoft

Cảnh báo: Bài viết này đã được dịch tự động

Thuộc tính

ID Bài viết: 978629 - Xem lại Lần cuối: 10/11/2011 22:44:00 - Bản sửa đổi: 1.0

  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Workgroup
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Workgroup
  • kbexpertiseadvanced kbsurveynew kbqfe kbfix kbmt KB978629 KbMtvi
Phản hồi