Repliki wtórnego AlwaysOn zawiesza się lub zgłasza błąd 3961, gdy baza danych AlwaysOn CLR UDT w 2014 serwera SQL

WAŻNE: Ten artykuł został przetłumaczony przy użyciu oprogramowania firmy Microsoft do tłumaczenia maszynowego i może być poprawiony przy użyciu technologii Community Translation Framework (CTF). Firma Microsoft udostępnia artykuły tłumaczone maszynowo, poprawione przez społeczność, a także tłumaczone przez tłumaczy profesjonalnych, aby zapewnić dostęp do wszystkich artykułów w bazie wiedzy w wielu językach. Artykuły tłumaczone maszynowo i poprawione mogą zawierać błędy pisowni, składniowe i gramatyczne. Firma Microsoft nie ponosi odpowiedzialności za żadne nieścisłości, błędy ani szkody spowodowane przez niepoprawne tłumaczenia zawartości ani przez korzystanie z niej przez klientów. Więcej o strukturze CTF: http://support.microsoft.com/gp/machine-translation-corrections/pl.

Anglojęzyczna wersja tego artykułu to: 3042370
Symptomy

Rozważ następujący scenariusz:
  • Włącz funkcję grupy dostępności (AlwaysOn) w 2014 Microsoft SQL Server.
  • Baza danych (AlwaysOn) ma wspólne language runtime (CLR) zdefiniowane przez użytkownika typu danych (UDT). Ponadto sam CLR UDT istnieje w więcej niż jednej bazy danych.
  • Kwerenda obejmuje wiele baz danych, które mają CLR UDT.
W tym scenariuszu występuje błąd naruszenia zasad dostępu na replica pomocniczego, a wystąpienie programu SQL Server zawiesza się następujący komunikat o błędzie w dzienniku błędów programu SQL Server:
2015 r.-02-17 13:07:36.85 spid27s zamykanie bazy danych z powodu wyjątku 2905 podczas przetwarzania podczas przekazywania transakcji VLR.

13:07:36.85 2015 r.-02-17 spid27s błąd: 3449, wskaźnik ważności: 21, stan: 1.2015-02-17 spid27s 13:07:36.85 programu SQL Server musi być wyłączony w celu odzyskania bazy danych (ID 2). Baza danych jest baza danych użytkownika może nie zostać zamknięty lub systemowej bazy danych. Ponownie uruchom program SQL Server. Jeśli baza danych nie może odzyskać po uruchomieniu innego, napraw lub przywracanie bazy danych.
Dodatkowo pojawi się następujący komunikat o błędzie w bazie danych wtórnego repliki, a ten błąd nie zniknie dopiero po ponownym uruchomieniu programu SQL Server:
Msg 3961, poziom: 16, stan: 1, wiersz 3
Migawka izolacji transakcji nie powiodło się w bazie danych "DatabaseName>' ponieważ żądany przez instrukcję obiekt został zmodyfikowany przez instrukcji DDL w innej jednoczesnych transakcji od momentu rozpoczęcia tej transakcji. To jest niedozwolone, ponieważ nie ma wersji metadane. Współbieżnych aktualizacji do metadane może prowadzić do niespójności, jeśli zmieszane z izolacji migawki.


Rozwiązanie

Informacje dotyczące zbiorczej aktualizacji

Problem został rozwiązany po raz pierwszy w następujących aktualizacji zbiorczej programu SQL Server.

Zalecenie: Zainstalować najnowszą aktualizację zbiorczą dla programu SQL Server
Każdej nowej aktualizacji zbiorczej dla programu SQL Server zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały zawarte w poprzedniej zbiorczej aktualizacji. Firma Microsoft zaleca, Pobierz i zainstaluj najnowsze aktualizacje zbiorcze dla programu SQL Server:

Informacje o aktualizacji

Aby rozwiązać ten problem, należy zastosować aktualizację KB 3043788: Jest dostępnych dla programu SQL Server 2014 pakiet aktualizacji na żądanie poprawki.
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji „Dotyczy”.

Ostrzeżenie: ten artykuł przetłumaczono automatycznie

Właściwości

Identyfikator artykułu: 3042370 — ostatni przegląd: 06/25/2015 06:41:00 — zmiana: 3.0

Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Service Pack 1

  • kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB3042370 KbMtpl
Opinia