Symptomy
Jeśli podczas uruchamiania programu Microsoft SQL Server 2016 i 2017 użytkownik spróbuje Aby nawiązać połączenie z bazą danych przed jej rozpoczęciem, sesja użytkownika może spowodować Baza danych do automatycznego uruchamiania. Jeśli tak się stanie, jeśli baza danych zawiera Obiekt FileTable i ma włączony NON_TRANSACTED_ACCESS FILESTREAM, a następnie poziom bazy danych Katalog FileTable jest niedostępny po uruchomieniu bazy danych. Jeśli spróbujesz uzyskać dostęp do folderu za pomocą Eksploratora plików, może to oznaczać, że folder jest dostępny. Po uruchomieniu polecenia "dir" z wiersza polecenia zostanie zwrócony komunikat "system nie może znaleźć określonego pliku".
Ponadto w dzienniku błędów mogą być wyświetlane następujące błędy wskazujące sesję użytkownika wyzwalającą bazę danych w celu automatycznego uruchomienia:
DateTime Błąd logowania: 18456; ważność: 14; stan: 38.
DateTime Logowanie użytkownika "username"nie powiodło się. Przyczyna: nie można otworzyć jawnie określonej bazy danych "DatabaseName". [Klient: IPNumber]
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".
Rozwiązanie
Ten problem został rozwiązany w następujących zbiorczych aktualizacjach programu SQL Server:
Informacje dotyczące aktualizacji zbiorczych dla programu SQL Server:
Każda nowa Zbiorcza aktualizacja programu SQL Server zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń uwzględnione w poprzedniej aktualizacji zbiorczej. Zapoznaj się z najnowszymi aktualizacjami zbiorczymi dla programu SQL Server:
Obejście
Obejście tego problemu polega na wyłączeniu i ponownym włączeniu non_transacted_access FILESTREAM bazy danych.
ALTER DATABASE [DatabaseName] Ustawianie SINGLE_USER z NATYCHMIASTowym wycofaniem
ALTER DATABASE [DatabaseName] Set FILESTREAM (NON_TRANSACTED_ACCESS = off)
ALTER DATABASE [DatabaseName] Set FILESTREAM (NON_TRANSACTED_ACCESS = Full)
ALTER DATABASE [DatabaseName] Ustawianie MULTI_USER z NATYCHMIASTowym wycofaniem
Informacje
Dowiedz się więcej oterminologia używana przez firmę Microsoft do opisywania aktualizacji oprogramowania.