Cómo retrasar el inicio de SQL Server

11

Cuando iniciamos SQL Server, las unidades SAN pueden no estar disponibles todavía. ¿Hay alguna manera de retrasar el inicio de SQL Server en 1 minuto? En este momento tenemos que reiniciar SQL Server después de iniciar el servidor.

ob213
fuente

Respuestas:

10

Hablamos de un problema similar antes aquí y aquí y lo que funcionó en ese caso fue configurar el SQL Server para que dependiera de los controladores de disco. Deberá probar esto para asegurarse de que funciona en su configuración, pero debería ser el truco.

mrdenny
fuente
5

Prueba estos:

  • Establezca una dependencia de servicio en algún servicio SAN / HBA (se puede hacer en services.msc)
  • Cambie el servicio a "Automático (inicio retrasado)" si un SO posterior
  • Establezca el servicio en "Manual" y actívelo con un trabajo (según la respuesta de Richard)
gbn
fuente
2

Dos cosas me vienen a la mente.

Hay una versión de Windows que permite inicios demorados. Sin embargo, sospecho que incluso si configura eso, no será lo suficientemente largo. (Además, sospecho que probablemente no tenga esa versión de Windows, si está utilizando SAN).

Una solución (aunque un poco hacky) sería crear un script por lotes que se retrasó por 60 segundos y luego llamó al servicio para iniciarlo:

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

Agregue eso a su carpeta de Inicio en sus Archivos de programa y debería funcionar.

Ricardo
fuente
Los elementos de la carpeta de inicio no se activarán hasta que alguien inicie sesión en el servidor SQL, por lo que este no es un método muy bueno para iniciar el servidor SQL automáticamente.
mrdenny
¿Te refieres a los registros en Windows? Eso tendría sentido.
Richard
Sí, los elementos en la carpeta de inicio son específicos del usuario, por lo que no se ejecutan hasta que el usuario inicia sesión en SQL Server.
mrdenny