你目前正处于脱机状态,正在等待 Internet 重新连接

SQL Server khẳng định lỗi khi bạn cố gắng thực hiện một số lượng lớn chèn hoặc BCP tuyên bố: "<loglock.cpp>, dòng = 807 Failed Assertion = ' kết quả == LCK_OK'"</loglock.cpp>

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.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này: 2700641
Triệu chứng
Xem xét kịch bản sau đây:
  • Máy chủ a và b máy chủ đang chạy Microsoft SQL Server 2008 hay SQL Server 2008 R2.
  • Bạn thiết lập bộ máy cơ sở dữ liệu phản ánh giữa máy chủ a và Server B.
  • Bạn thực hiện một số lượng lớn CHÈN hoặc BCP tuyên bố trên bộ máy cơ sở dữ liệu chính.

    Lưu ý theo mặc định, tùy chọn CHECK_CONSTRAINTS được thiết lập để tắt khi bạn thực hiện một số lượng lớn CHÈN hoặc BCP tuyên bố.
  • bộ máy cơ sở dữ liệu phản ánh là bị hỏng, và bộ máy cơ sở dữ liệu phản ánh phiên vào nhà nước bị treo.
Trong trường hợp này, một khẳng định xảy ra trên máy chủ nhân bản. Vì vậy, một tập tin mini-dump được tạo ra trong mục tin thư thoại kí nhập máy chủ SQL. Ngoài ra, bạn thấy sau lỗi trong SQL Server nhật kí lỗi vào máy chủ nhân bản:

ngày thời gian bản ghi dịch vụ spid Bằng cách sử dụng 'dbghelp.dll' phiên bản '4.0.5'
ngày thời gian bản ghi dịch vụ spid ** Dump thread - bản ghi dịch vụ spid = 31, EC = 0x00000007F9B1C1A0
ngày thời gian bản ghi dịch vụ spid *** Stack Dump đang được gửi đến c: Program Files Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\LOG\SQLDump0001.txt

ngày thời gian bản ghi dịch vụ spid * *******************************************************************************

ngày thời gian bản ghi dịch vụ spid *
ngày thời gian bản ghi dịch vụ spid * Bắt đầu NGĂN XẾP DUMP:
ngày thời gian bản ghi dịch vụ spid * 01/04/12 16: 46: 21 spid 12100
ngày thời gian bản ghi dịch vụ spid *
ngày thời gian bản ghi dịch vụ spid * Vị trí: loglock.cpp:807
ngày thời gian bản ghi dịch vụ spid * Biểu hiện: kết quả == LCK_OK
ngày thời gian bản ghi dịch vụ spid * bản ghi dịch vụ SPID: 31
ngày thời gian bản ghi dịch vụ spid * Quá trình ID: 2228

ngày thời gian bản ghi dịch vụ spid Lỗi: 17066, mức độ nghiêm trọng: 16, bang: 1.

ngày thời gian bản ghi dịch vụ spid SQL Server khẳng định: Tập tin: <loglock.cpp>, dòng = 807 Failed Assertion = ' kết quả == LCK_OK'. Lỗi này có thể liên quan đến thời gian. Nếu lỗi vẫn còn sau khi connectcomputer tuyên bố, sử dụng DBCC CHECKDB để kiểm tra bộ máy cơ sở dữ liệu cho cấu trúc toàn vẹn, hoặc khởi động lại máy chủ để đảm bảo các cấu trúc dữ liệu trong bộ nhớ không bị hỏng.

</loglock.cpp>ngày thời gian bản ghi dịch vụ spid Lỗi: 3624, mức độ nghiêm trọng: 20, bang: 1.

ngày thời gian bản ghi dịch vụ spid Một hệ thống kiểm tra khẳng định đã thất bại. Kiểm tra Nhật ký lỗi SQL Server để biết chi tiết. Thông thường, một sự thất bại khẳng định gây ra bởi một phần mềm lỗi hoặc dữ liệu tham nhũng. Để kiểm tra các bộ máy cơ sở dữ liệu tham nhũng, xem xét việc chạy DBCC CHECKDB. Nếu bạn đã đồng ý để gửi bãi cho Microsoft khi thiết lập, một bãi chứa nhỏ sẽ được gửi tới Microsoft. Một bản Cập Nhật có thể có sẵn từ Microsoft trong Service Pack mới nhất hoặc trong một QFE từ hỗ trợ kỹ thuật.

ngày thời gian bản ghi dịch vụ spid Lỗi: 1454, mức độ nghiêm trọng: 16, bang: 1.

ngày thời gian bản ghi dịch vụ spid bộ máy cơ sở dữ liệu phản ánh sẽ bị đình chỉ. Trường hợp máy chủ '<Instance name="">' gặp phải lỗi 3624, bang 1, mức độ nghiêm trọng 20 khi nó đã hành động như là một đối tác mirroring cho bộ máy cơ sở dữ liệu '<database name="">'. bộ máy cơ sở dữ liệu phản ánh các đối tác có thể cố gắng phục hồi tự động từ các lỗi và tiếp tục phiên mirroring. Để biết thêm chi tiết, xem Nhật ký lỗi cho các lỗi. </database></Instance>


Lưu ý Bạn phải reinitialize bộ máy cơ sở dữ liệu phản ánh để giải quyết vấn đề này.
Nguyên nhân
Vấn đề này xảy ra vì các thông tin tương hợp về sau khóa trong Nhật ký giao dịch của bộ máy cơ sở dữ liệu chính không được chuyển giao cho các máy chủ nhân bản.
Cách giải quyết khác
Để làm việc xung quanh vấn đề này, thực hiện các tuyên bố đưa vào số lượng lớn hay BCP vào bộ máy cơ sở dữ liệu chủ yếu bằng cách sử dụng tùy chọn CHECK_CONSTRAINTS ON.

Lưu ý Tùy chọn CHECK_CONSTRAINTS ON gây ra hiệu suất chậm hơn. Tuy nhiên, các khóa khẳng định trên gương máy chủ không xảy ra.
Thông tin thêm
Trong một số lượng lớn CHÈN hoặc BCP thao tác, một giao dịch con tắt tùy chọn CHECK_CONSTRAINTS. Giao dịch đứa trẻ này sử dụng một khóa đó là tương hợp về sau với các giao dịch phụ huynh khóa. Các thông tin tương hợp về sau được lưu trữ trong các bản ghi của giao dịch của bộ máy cơ sở dữ liệu chính. Vì vậy, yêu cầu khóa giao dịch của trẻ em được cấp trên bộ máy cơ sở dữ liệu chính.

Tuy nhiên, thông tin tương hợp về sau này không được chuyển đến máy chủ nhân bản. Vì vậy, yêu cầu khóa trẻ em giao dịch là không tương hợp về sau với các phụ huynh giao dịch khóa trên máy chủ nhân bản. Kịch bản này gây ra assert trên máy chủ nhân bản.

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

属性

文章 ID:2700641 - 上次审阅时间:08/06/2012 16:30:00 - 修订版本: 1.0

Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 Enterprise

  • kbsurveynew kbtshoot kbprb kbmt KB2700641 KbMtvi
反馈