Jak opóźnić uruchomienie programu SQL Server

11

Kiedy uruchamiamy SQL Server, dyski SAN mogą być jeszcze niedostępne. Czy istnieje sposób na opóźnienie uruchomienia programu SQL Server o 1 minutę? W tej chwili musimy ponownie uruchomić SQL Server po uruchomieniu serwera.

ob213
źródło

Odpowiedzi:

10

Rozmawialiśmy o podobnym problemie wcześniej tutaj i tutaj, a to, co zadziałało w tym przypadku, polegało na tym, że SQL Server był zależny od sterowników dysków. Będziesz chciał to przetestować, aby upewnić się, że działa to w twojej konfiguracji, ale powinno wystarczyć.

mrdenny
źródło
5

Spróbuj tych:

  • Ustaw zależność usługi od niektórych usług SAN / HBA (można to zrobić w services.msc)
  • Zmień usługę na „Automatyczny (opóźniony start)”, jeśli nowszy system operacyjny
  • Ustaw usługę na „Ręczny” i uruchom z zadaniem (zgodnie z odpowiedzią Richarda)
gbn
źródło
2

Przychodzą mi na myśl dwie rzeczy.

Istnieje wersja systemu Windows, która umożliwia opóźnione uruchamianie. Podejrzewam jednak, że nawet jeśli to skonfigurujesz, nie będzie to wystarczająco długo. (Podejrzewam również, że prawdopodobnie nie masz tej wersji systemu Windows, jeśli używasz SAN).

Jednym z rozwiązań (choć nieco zhackowanych) byłoby utworzenie skryptu wsadowego, który opóźniałby się o 60 sekund, a następnie wywołał usługę w celu uruchomienia:

REM delay 60 seconds
ping 127.0.0.1 -n 60  
net start mssqlserver

Dodaj to do folderu Autostart w plikach programu i powinno działać.

Richard
źródło
Elementy w folderze startowym nie zostaną uruchomione, dopóki ktoś nie zaloguje się do programu SQL Server, więc nie jest to bardzo dobra metoda automatycznego uruchamiania programu SQL Server.
mrdenny
Masz na myśli logi do systemu Windows? To miałoby sens.
Richard
Tak, elementy w folderze startowym są specyficzne dla użytkownika, więc nie są uruchamiane, dopóki użytkownik nie zaloguje się do SQL Server.
mrdenny