Los pasos del proceso de apagado del servidor son:
Comienza el proceso de apagado
El servidor crea un subproceso de apagado si es necesario
El servidor deja de aceptar nuevas conexiones
El servidor acaba con su tarea actual
Se apagan o cierran los motores de almacenamiento
El servidor se cierra
Seguidamente, una descripción más detallada del proceso:
Comienza el proceso de apagado.
          El apagado del servidor puede iniciarse de diferentes maneras.
          Por ejemplo, un usuario con el privilegio
          SHUTDOWN puede ejecutar la orden
          mysqladmin shutdown.
          mysqladmin puede ser utilizado en cualquier
          plataforma soportada por MySQL. También son posibles otros
          métodos de encendido y apagado específicos de cada sistema
          operativo: El servidor se apaga en Unix cuando recibe una
          señal SIGTERM. Un servidor ejecutándose
          como servicio en Windows se apaga cuando el administrador de
          servicios se lo indica.
        
El servidor crea un subproceso de apagado si es necesario.
          Dependiendo de como se ha iniciado el apagado, el servidor
          puede crear un subproceso para llevar a cabo el proceso de
          apagado. Si el apagado fue demandado por un cliente, se crea
          un subproceso de apagado. Si el apagado es debido a la
          recepción de una señal SIGTERM, el
          subproceso de la señal podría llevar a cabo el apagado él
          mismo, o podría crear un subproceso separado para hacerlo. Si
          el servidor intenta crear un subproceso de apagado y no puede
          hacerlo (por ejemplo, porque no hay memoria suficiente
          disponible), crea un mensaje de diagnóstico que aparece en el
          registro de errores:
        
Error: Can't create thread to kill server
El servidor deja de aceptar nuevas conexiones.
Para prevenir que comiencen nuevas actividades durante el apagado, el servidor deja de aceptar nuevas conexiones de clientes. Esto lo consigue cerrando las conexiones de red a las que normalmente escucha: el puerto TCP/IP, el archivo socket Unix, la "named pipe" de Windows, y la memoria compartida de Windows.
El servidor acaba con su tarea actual.
          En cada subproceso asociado a una conexión de un cliente, se
          rompe la conexión al cliente, y dicho subproceso es marcado
          como muerto. Los subprocesos mueren cuando se dan cuenta de
          que han sido marcados de esa manera. Los subprocesos de
          conexiones inactivas mueren rápidamente. Los que están
          actualmente procesando sentencias, consultan periodicamente su
          estado y tardan un poco más en morir. Para encontrar
          información adicional sobre la terminación de subprocesos,
          consulte Sección 13.5.5.3, “Sintaxis de KILL”, en particular las
          instrucciones sobre las operaciones REPAIR
          TABLE o OPTIMIZE TABLE que han
          sido matadas en tablas MyISAM.
        
          En los subprocesos que tienen abierta una transacción, la
          transacción se cancela. Nótese que si un subproceso está
          actualizando una tabla no transaccional, una operación como
          un UPDATE o INSERT de
          múltiples registros podría dejar la tabla parcialmente
          actualizada, porque la operación puede terminar antes de ser
          completada.
        
Si el servidor es un servidor maestro de replicación, los subprocesos asociados a esclavos todavía conectados son tratados como subprocesos de cualquier otro cliente. Es decir, cada uno es marcado como muerto y se cierra la próxima vez que éste comprueba su estado.
Si el servidor es un servidor esclavo de replicación, los subprocesos de Entrada/Salida y SQL se paran, si están activos, antes de que los subprocesos de cliente sean marcados como muertos. Se permite al subproceso SQL finalizar su sentencia actual (para evitar causar problemas de replicación), y entonces se para. Si el subproceso SQL estaba en medio de una transacción en ese momento, la transacción se cancela.
Se apagan o cierran los motores de almacenamiento.
En este punto, la cache de tabla se escribe a disco y se cierran todas las tablas abiertas.
          Cada motor de almacenamiento realiza todas las acciones
          necesarias para las tablas que controla. Por ejemplo, MyISAM
          realiza cualquier escritura de índices pendiente de una
          tabla. InnoDB escribe sus buffers a disco (desde la versión
          5.0.5: a menos que innodb_fast_shutdown
          valga 2), escribe el número de secuencia de registro (LSN -
          Log Sequence Number) en el espacio de tablas, y cierra sus
          propios subprocesos internos.
        
El servidor se cierra.
Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a mysql-es@vespito.com.

