KB4340837 — POPRAWKA: Błąd 3906 podczas stosowania poprawki na serwerze, który ma migawkę bazy danych SQL Server w bazie danych subskrypcji ściągania

Dotyczy
SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Standard on Windows SQL Server 2014 Service Pack 2 - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Objawy

Załóżmy, że masz migawkę bazy danych w bazie danych subskrypcji pull na serwerze z uruchomioną usługą Microsoft SQL Server. Po zastosowaniu poprawki na serwerze uaktualnienie na poziomie skryptu kończy się niepowodzeniem i jest wyświetlany komunikat o błędzie podobny do następującego:

Uwaga

Data/godzina spid_number Wykonywanie uaktualnień metadanych zabezpieczeń zadań replikacji...
Data timespid_number Błąd: 3906, Ważność: 16, Stan: 1.
Data timespid_number Nie można zaktualizować bazy danych "database_name", ponieważ baza danych jest tylko do odczytu.
Data timespid_number Błąd: 912, Ważność: 21, Stan: 2.
Data timespid_number Uaktualnianie na poziomie skryptu dla bazy danych "master" nie powiodło się, ponieważ krok uaktualniania "msdb110_upgrade.sql" napotkał błąd 3906, stan 1, ważność 16. Jest to poważny błąd, który może zakłócić normalne działanie, przez co baza danych zostanie przełączona w tryb offline. Jeśli wystąpił błąd podczas uaktualniania głównej bazy danych, uniemożliwi to uruchomienie całego wystąpienia programu SQL Server. Sprawdź poprzednie wpisy dziennika błędów pod kątem błędów, podejmij odpowiednie działania naprawcze i uruchom ponownie bazę danych, aby kroki uaktualniania skryptu zostały wykonane pomyślnie.

Rozwiązanie

Ten problem został rozwiązany w następujących aktualizacjach programu SQL Server:

Informacje o kompilacjach programu SQL Server

Każda nowa kompilacja programu SQL Server zawiera wszystkie poprawki zabezpieczeń z poprzedniej kompilacji. Zalecamy zainstalowanie najnowszej kompilacji dla używanej wersji programu SQL Server:

Stan

Firma Microsoft potwierdziła, że jest to problem dotyczący produktów firmy Microsoft wymienionych w sekcji „Dotyczy”.

Źródła informacji

Dowiedz się więcej o terminologii używanej przez firmę Microsoft do opisywania aktualizacji oprogramowania.