Udostępnij za pośrednictwem


SQL Server 2016 Nie można uruchomić agenta lub błąd "Nie można pobrać danych" podczas próby odczytu dziennika błędów z programu SSMS 2016

W tym artykule wymieniono różne problemy występujące w programie SSMS podczas korzystania ze starszej wersji sterownika MS ODBC 13 i rozwiązywanie tych problemów.

Oryginalna wersja produktu: SQL Server 2016 Developer
Oryginalny numer KB: 3185365

Symptomy

Jeśli masz wystąpienie o nazwie Microsoft SQL Server 2016 RTM lub SQL Server 2016 RTM CU1, może wystąpić jeden z następujących objawów.

Symptom 1

Plik dziennika agenta SQL Server wyświetla komunikat podobny do następującego:

2016-08-06 14:54:41 - ! [000] Nie można nawiązać połączenia z serwerem "servername\instancename"; Nie można uruchomić serwera SQLServerAgent
2016-08-06 14:54:46 - ! [298] Błąd serwera SQL:
65535, SQL Server Interfejsy sieciowe: Błąd podczas lokalizowania określonego serwera/wystąpienia
[xFFFFFFFF]. [SQLSTATE 08001]
2016-08-06 14:54:46 - ! [165] Błąd ODBC: 0,
Limit czasu logowania wygasł [SQLSTATE HYT00]
2016-08-06 14:54:46 - ! [298]
Błąd sqlserver: 65535, wystąpił błąd związany z siecią lub wystąpieniem podczas nawiązywania połączenia z SQL Server.
Serwer nie został znaleziony lub jest niedostępny.
Sprawdź, czy nazwa wystąpienia jest poprawna i czy program SQL Server jest skonfigurowany do zezwalania na połączenia zdalne. Aby uzyskać więcej informacji, zobacz SQL Server Books Online. [SQLSTATE 08001]

Symptom 2

Próba odczytu dziennika błędów SQL Server kończy się niepowodzeniem i zwracany jest błąd podobny do następującego:

Nie można pobrać danych dla tego żądania. (Microsoft.SqlServer.Management.Sdk.Sfc)
Wystąpił wyjątek podczas wykonywania instrukcji języka Transact-SQL lub partii. (Microsoft.SqlServer.ConnectionInfo)

Ponadto podczas próby wykonania xp_readerrorlog może to spowodować następujące błędy:

Msg 22004, Poziom 16, Stan 1, Linia 0
Nie można otworzyć połączenia sprzężenia zwrotnego. Aby uzyskać więcej informacji, zobacz dziennik zdarzeń.
Msg 22004, Poziom 16, Stan 1, Linia 0
Nie można odnaleźć lokalizacji dziennika błędów.

Symptom 3

Niektóre plany konserwacji lub zadania agenta SQL, takie jak zadanie oczyszczania konserwacji w celu usunięcia starych plików kopii zapasowych lub raportów "w trybie dyskretnym" kończą się niepowodzeniem. W przypadku zadania oczyszczania pliki, które mają zostać usunięte, nie zostaną usunięte po uruchomieniu odpowiedniego zadania i żaden błąd nie zostanie zapisany w dzienniku SQL Server. Wykonanie spowodowałoby wystąpienie sp_readerrorlog objawu 2.

Przyczyna

Ten problem jest spowodowany wadą sterownika MS ODBC 13. SQL Server Management Studio (SSMS) i SQL Server Agent używają tego sterownika do nawiązywania połączenia z komputerem SQL Server.

Rozwiązanie

Ten problem został rozwiązany w sterowniku MS ODBC 13.1.