SQL Server nie uruchamia się przy starcie systemu Windows, ale uruchamia się ręcznie

21

Usługa mojej instancji SQL Server (SQL Server 2008 R2 Express) ma typ uruchomienia = automatyczny. W ciągu ostatnich kilku razy, gdy ponownie uruchomiłem komputer, usługa nie uruchomiła się sama, ale uruchamia się dobrze, gdy ręcznie uruchamiam usługę.

Podgląd zdarzeń pokazuje, że usługa nie uruchamia się z powodu przekroczenia limitu czasu połączenia. Istnieją 2 wpisy dotyczące tego limitu czasu:

Wpis 1

Przekroczono limit czasu (30000 milisekund) podczas oczekiwania na połączenie usługi SQL Server (SQLEXPRESS).

Wpis 2

Uruchomienie usługi SQL Server (SQLEXPRESS) nie powiodło się z powodu następującego błędu: Usługa nie odpowiedziała na żądanie uruchomienia lub sterowania w odpowiednim czasie.

Sprawdziłem pliki ERRORLOG i nie ma żadnych błędów zarejestrowanych w czasie, gdy te wpisy Podglądu zdarzeń.

Wszelkie pomysły na przyczynę tego problemu lub jak mogę dalej badać?

Keith
źródło

Odpowiedzi:

12

Ten problem występuje, ponieważ SQL Server utracił poświadczenia identyfikatora logowania lub użył konta bez uprawnień do uruchamiania usług.

Do automatycznego uruchamiania usług SQL Server potrzebuje konta z uprawnieniami do uruchamiania usług podczas uruchamiania systemu operacyjnego.

Aby rozwiązać ten problem, przejdź do Narzędzia administracyjne> Usługi> SQL Server (MSSQLSERVER lub nazwa instancji)> Kliknij prawym przyciskiem myszy> Właściwości> Przejdź do logowania> Ustaw opcję logowania przy użyciu lokalnego konta systemowego

Jeśli wybrałeś tę opcję, kliknij przycisk Przeglądaj i znajdź tam konto usługi lokalnej lub konto usługi sieciowej> kliknij Zastosuj.

Uruchom ponownie komputer, a będziesz mógł uruchomić SQL Server.

jmonterohn
źródło
1

Wystarczy zastanowić się nad czymś do zbadania, w środowisku typu domeny, niektóre systemy operacyjne umożliwiają logowanie się do serwera przed ustanowieniem pełnej łączności sieciowej. Możesz sprawdzić ustawienia zasad grupy na poziomie lokalnym lub domeny, aby nie zezwalać na logowanie lub uruchamianie systemu operacyjnego do momentu ustanowienia pełnej łączności sieciowej.

Na wypadek, gdybyś zauważył to po zalogowaniu się na serwerze po ponownym uruchomieniu, loguje się do systemu operacyjnego z buforowanym poświadczeniem, zanim może dotrzeć do kontrolerów domeny w celu uwierzytelnienia (połączenie sieciowe nie zostało w pełni ustanowione) przy użyciu poświadczenia logowania, jeśli jest to poświadczenie domeny konto usługi SQLExpress działa jako.

Nie jestem pewien, czy ma to zastosowanie w twoim przypadku, ale jest to coś, co najmniej po prostu zbadaj i spróbuj przetestować przynajmniej na wszelki wypadek.

Znalazłem to w artykule, który zapisałem dawno temu, gdy miałem podobny problem z katalogiem domowym AD (nie za pomocą skryptu logowania), aby zmapować katalog domowy na komputerze stacjonarnym:

Wartość zasad dla Konfiguracja komputera -> Szablony administracyjne -> System -> Logowanie „Zawsze czekaj na sieć podczas uruchamiania komputera i logowania” zostanie ustawiona na „Włączone”.

Jeśli następująca wartość rejestru nie istnieje lub jej wartość nie jest ustawiona na 1, jest to ustalenie:

Hive rejestru: HKEY_LOCAL_MACHINE Podklucz: \ Software \ Policies \ Microsoft \ Windows NT \ CurrentVersion \ Winlogon \ Nazwa wartości: SyncForegroundPolicy Typ: REG_DWORD Wartość: 1

Pimp Juice IT
źródło
1

Czy próbowałeś zalogować się jako lokalny administrator?

Miałem dokładnie ten sam problem z SQL 2014 Express w systemie Windows 10. Chciałem utworzyć nowego użytkownika, który nie był wbudowanym lokalnym administratorem, więc utworzyłem nowego użytkownika, dodałem go do grupy Administratorzy, ustawiłem tego użytkownika do autologon po boot et voila! Usługa SQL Server nie uruchamia się automatycznie. Próbowałem opóźnionego startu, próbowałem usługi lokalnej, próbowałem usługi sieciowej, próbowałem nowego użytkownika administratora, próbowałem ustawienia zasad grupy Zawsze czekaj ... Nic nie działało.

Nawet odinstalowałem SQL Server 2014 Express, uruchomiłem ponownie, ręcznie usunąłem wszystkie pozostałe pliki / foldery i ponownie uruchomiłem ponownie i ponownie zainstalowałem pod nowym użytkownikiem administratora. Nadal nie ma mowy.

Przełączono z powrotem na autologon jako wbudowane konto administratora et voila! Usługa SQL Server uruchamia się teraz automatycznie.

Jest to oczywiście obejście dla mnie, dlatego wciąż szukam.

** AKTUALIZACJA **

Właściwie mój problem został zakorzeniony w maszynie, której nazwa została poprzednio zmieniona. Po zmianie wartości „OriginalMachineName” w rejestrze problem został rozwiązany!

Jerry Turner
źródło
-1

Poszedłem do lokalnego serwisu i zmieniłem się

SQL Server (MSSQLSERVER SQL Server Agent (MSSQLSERVER)

Ustaw je na Opóźnienie automatyczne i Typ logowania na

Lokalne konto systemowe Zaznacz ( Zezwalaj usłudze na interakcję z komputerem stacjonarnym )

I zaczyna się automatycznie

Hamisi Jabe
źródło
-5

Jest kilka rzeczy, których możesz spróbować. Najpierw przejdź do Panelu sterowania> System i zabezpieczenia> Narzędzia administracyjne> Usługi>, a następnie znajdź SQL Server lub SQL Server VSS Writer na liście usług (lokalnych). Kliknij go prawym przyciskiem myszy i wybierz Właściwości, kliknij kartę Ogólne i upewnij się, że Typ uruchomienia jest ustawiony na „Automatyczny”.

Teraz usługa może z jakiegoś powodu nie działać. Możesz więc kliknąć kartę Odzyskiwanie i wybrać opcję Pierwsza awaria. Prawdopodobnie spróbuj ponownie uruchomić usługę.

Następnie przejdź do Podglądu zdarzeń i sprawdź listę usług oraz sprawdź ostrzeżenia lub błędy, które mogły zostać zarejestrowane przez usługę (lub system Windows).

Jeśli wszystko inne zawiedzie, możesz spróbować użyć narzędzia Rebuild Master Utility. Aby uzyskać szczegółowe informacje na ten temat, zobacz tę stronę MSDN: https://social.msdn.microsoft.com/Forums/en-US/f713067f-3017-478b-a9ae-8049d80f9fdc/sql-server-is-not-starting-up? forum = sqldatabaseengine

Jase
źródło
2
Cóż za straszny link - przebudowanie Master DB to straszna rada - dla 1 OP powinien mieć kopie zapasowe Master DB i odpowiednich DB Systemowych, dla 2 może uruchomić SQL Server ręcznie, więc problem opisany w łączu nie jest jego problemem . Keith - czy kiedykolwiek doszedłeś do sedna?
MHSQLDBA
dlaczego ta przerażająca odpowiedź wciąż tu jest?
Mitch Wheat
Słowo „prawdopodobnie” nie należy tutaj do żadnej odpowiedzi.
Jerry Dodge