Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Apagado (comando de base de datos)

Modificado en la 5.0 versión.:

shutdown

El comando shutdown limpia todos los recursos de la base de datos y luego termina el proceso. Debes ejecutar el comando shutdown contra la base de datos admin.

Este comando está disponible en implementaciones alojadas en los siguientes entornos:

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

Importante

Este comando no es compatible con los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulta Comandos no compatibles.

El comando tiene la siguiente sintaxis:

db.adminCommand(
{
shutdown: 1,
force: <boolean>
timeoutSecs: <int>,
comment: <any>
}
)

El comando acepta estos campos:

Campo
Descripción

Especifique 1.

opcional. Especifique true para forzar la mongod o la mongos para que se apague. El apagado forzoso interrumpe cualquier operación en curso en el mongod o el mongos y puede resultar en un comportamiento inesperado.

Puedes pausar y reanudar la creación de índices en curso usando force. Para obtener más información, consulte shutdown en sets de réplicas.

Opcional.

A partir de MongoDB 5.0, mongod y mongos entran en un período de inactividad para permitir que se completen las operaciones de base de datos en curso antes de apagarse.

Si un mongod primario recibe una solicitud de apagado, el primario:

  1. Intentos de pasar a un secundario.

    Si el paso hacia abajo falla y un/una:

  2. Entra en el periodo de "quiesce".

  3. Finaliza cualquier operación de base de datos restante.

  4. Se apaga.

Para una mongod solicitud de apagado secundaria o mongos, se entra en el período de inactividad después de solicitar el apagado.

El periodo de parada se especifica por:

Los clientes no pueden abrir nuevas conexiones a un mongod o a un mongos que se está apagando.

timeoutSecs especifica un período de tiempo en segundos. El valor por defecto es:

  • 15 segundos a partir de MongoDB 5.0.

  • 10 segundos en las versiones de MongoDB anteriores a la 5.0.

mongod utiliza timeoutSecs de la siguiente manera:

  • Si el nodo actual es el primario de un set de réplicas, mongod espera un periodo de hasta el número de segundos especificado por el campo timeoutSecs para que un nodo elegible se ponga al día antes de que el nodo primario ceda. Para más detalles sobre el tiempo de actualización, consulta atraso de la replicación.

  • Si el nodo actual se encuentra en el estado SECONDARY después de dejar de ser el primario, cualquier tiempo restante especificado en timeoutSecs se utiliza para un periodo de quiescencia, lo que permite que las operaciones existentes se completen. Se envían nuevas operaciones a otros nodos del conjunto de réplicas.

A partir de MongoDB 5.0, mongos utiliza timeoutSecs como periodo de inactividad, lo que permite que las operaciones existentes se completen. Se envían nuevas operaciones a otros nodos de mongos. En las versiones de MongoDB anteriores a la 5.0, mongos se apaga inmediatamente y no utiliza timeoutSecs.

comment

Opcional. Un comentario proporcionado por el usuario para adjuntar a este comando. Una vez configurado, este comentario aparece junto a los registros de este comando en las siguientes ubicaciones:

Un comentario puede ser de cualquier tipo BSON válido (string, objeto, arreglo, etc.).

Para un mongod iniciado con Autenticación en implementaciones autogestionadas, debes ejecutar shutdown sobre una conexión autenticada. Consulta Control de acceso para obtener más información.

Para una mongod iniciada sin Autenticación en implementaciones autogestionadas, se debe ejecutar shutdown desde un cliente conectado a la interfaz localhost. Por ejemplo, ejecute mongosh con la opción --host "127.0.0.1" en la misma máquina host que mongod.

shutdown falla si el set de réplicas está ejecutando ciertas operaciones como la creación de índices. Puedes especificar force: true para forzar que el nodo guarde el progreso de la creación de índices en el disco. El mongod recupera la creación de índices cuando se reinicia y continúa desde el punto de control guardado.

A partir de MongoDB 5.0, mongod y mongos entran en un período de inactividad para permitir que se completen las operaciones de base de datos en curso antes de apagarse.

Si un mongod primario recibe una solicitud de apagado, el primario:

  1. Intentos de pasar a un secundario.

    Si el paso hacia abajo falla y un/una:

  2. Entra en el periodo de "quiesce".

  3. Finaliza cualquier operación de base de datos restante.

  4. Se apaga.

Para una mongod solicitud de apagado secundaria o mongos, se entra en el período de inactividad después de solicitar el apagado.

El periodo de parada se especifica por:

Los clientes no pueden abrir nuevas conexiones a un mongod o a un mongos que se está apagando.

timeoutSecs especifica un período de tiempo en segundos. El valor por defecto es:

  • 15 segundos a partir de MongoDB 5.0.

  • 10 segundos en las versiones de MongoDB anteriores a la 5.0.

mongod utiliza timeoutSecs de la siguiente manera:

  • Si el nodo actual es el primario de un set de réplicas, mongod espera un periodo de hasta el número de segundos especificado por el campo timeoutSecs para que un nodo elegible se ponga al día antes de que el nodo primario ceda. Para más detalles sobre el tiempo de actualización, consulta atraso de la replicación.

  • Si el nodo actual se encuentra en el estado SECONDARY después de dejar de ser el primario, cualquier tiempo restante especificado en timeoutSecs se utiliza para un periodo de quiescencia, lo que permite que las operaciones existentes se completen. Se envían nuevas operaciones a otros nodos del conjunto de réplicas.

A partir de MongoDB 5.0, mongos utiliza timeoutSecs como periodo de inactividad, lo que permite que las operaciones existentes se completen. Se envían nuevas operaciones a otros nodos de mongos. En las versiones de MongoDB anteriores a la 5.0, mongos se apaga inmediatamente y no utiliza timeoutSecs.

Advertencia

El cierre forzado del primario puede provocar el rollback de cualquier escritura que aún no se haya replicado en un secundario.

Para ejecutar shutdown en un mongod aplicando la Autenticación en Implementaciones Autogestionadas, el usuario autenticado debe tener el privilegio shutdown. Por ejemplo, un usuario con el rol predeterminado hostManager tiene los permisos correspondientes.

db.adminCommand({ "shutdown" : 1 })
db.adminCommand({ "shutdown" : 1, "force" : true })
db.adminCommand({ "shutdown" : 1, timeoutSecs: 60 })