Todo esto se detalla exhaustivamente en esta página.
Dado que su pregunta específicamente pregunta "¿hay alguna recomendada por Microsoft ", me inclino a pensar que esto es contraproducente tener esta discusión aquí. El artículo detalla el proceso a través de
- Usando cualquiera
- línea de comando
- Potencia Shell,
- SQL Server Management Studio (GUI)
- Para 2008, 2012, 2014, 2016.
- Para el
- Motor de base de datos
- o agente
Si esos pasos son satisfactorios o no, sería mi opinión, que no desea. Entonces la respuesta correcta siempre estará más actualizada allí.
Detener el servicio antes de apagar
¿Es necesario o recomendado hacerlo antes de apagar un servidor que está ejecutando servicios SQL?
No, no es necesario. Cuando el kernel de Windows envía la señal de apagado a SQL Server, lo hará de manera segura y el sistema esperará a que se complete. Hablando en general, cualquier cosa construida con la capacidad de apagado con seguridad no tiene que ser apagado manualmente, y es lógico pensar todas las aplicaciones de Microsoft siguen su propio API y los procedimientos que atan a las PRESHUTDOWN
o SHUTDOWN
fases. A partir de los documentos PRESHUTDOWN
, que supongo que están usando,
Notifica a un servicio que el sistema se apagará. Los servicios que necesitan tiempo adicional para realizar tareas de limpieza más allá de la estricta restricción de tiempo al apagar el sistema pueden usar esta notificación. El administrador de control de servicios envía esta notificación a las aplicaciones que se han registrado antes de enviar una SERVICE_CONTROL_SHUTDOWN
notificación a las aplicaciones que se han registrado para esa notificación.
Un servicio que maneja esta notificación bloquea el apagado del sistema hasta que el servicio se detiene o el intervalo de tiempo de espera previo al apagado especificado SERVICE_PRESHUTDOWN_INFO
expira. Debido a que esto afecta la experiencia del usuario, los servicios deben usar esta función solo si es absolutamente necesario para evitar la pérdida de datos o un tiempo de recuperación significativo en el próximo inicio del sistema.
Como puede ser necesario, supongo que así es como funciona SQL Server.