Definición
Muestra el estado de la transición de un servidor de configuración embebido a un servidor de configuración dedicado.
El comando devuelve ok: 0 con un error si la transición falla, de lo contrario devuelve ok: 1.
Para comenzar a hacer la transición a un servidor de configuración dedicado, consulta el
startTransitionToDedicatedConfigServer .
Para detener la transición en curso de un servidor de configuración integrado a un servidor de configuración dedicado, consulta el comando stopTransitionToDedicatedConfigServer.
Para confirmar la transición de un servidor de configuración embebido a un servidor de configuración dedicado, consulte el comando commitTransitionToDedicatedConfigServer.
Nuevo en la versión 8.3.
Compatibilidad
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.
Nota
Este comando no es compatible en MongoDB Atlas. Consulta Modifica tu clúster fragmentado Atlas para drenar el servidor de configuración integrado.
Sintaxis
El comando tiene la siguiente sintaxis:
db.adminCommand( { getTransitionToDedicatedConfigServerStatus: 1 } )
Campos de salida
Este comando devuelve la siguiente salida:
Campo | Tipo | Descripción |
|---|---|---|
| string | Proporciona la operación de extracción de corriente actual que está realizando el balanceador. |
| string | Proporciona el estado de la transición a un servidor de configuración dedicado. |
| Documento | Muestra las tareas restantes que el balanceador debe realizar para drenar el shard antes de que se complete la transición a un servidor de configuración dedicado. |
| long | Indica el número de fragmentos que aún quedan en la partición. |
| long | Indica el número de bases de datos aún en la partición. |
| long | Indica el número de grandes porciones que aún se encuentran en el fragmento. |
| long | Indica el número de colecciones que aún quedan en la partición. |
| string | Proporciona mensajes adicionales para el usuario. |
| arreglo | Indica las bases de datos que utilizan la partición de drenaje como la partición primaria. Antes de que puedas hacer completamente la transición a un servidor de configuración dedicado, debes mover manualmente estas bases de datos a una nueva partición usando el comando |
| arreglo | Indica colecciones no particionadas almacenadas en la partición de drenaje. Antes de que puedas realizar la transición completa a un servidor de configuración dedicado, debes transferir manualmente estas colecciones a otra partición utilizando el comando |
Comportamiento
Requisitos de acceso
Si tienes habilitado authorization, debes tener el rol de clusterManager o cualquier rol que incluya la acción de removeShard.
Requisitos para la migración de la base de datos
Si el Servidor de configuración incrustado también es el primario de una de las bases de datos del clúster, entonces debes mover manualmente las bases de datos a una nueva partición después de migrar todos los datos desde la partición. Consulta el comando movePrimary y Eliminar particiones de un clúster para obtener más información.
Requisitos de migración de la colección
Si una de las colecciones no particionadas se encuentra en el servidor de configuración incrustado, primero debes migrar la colección a otra partición.
Para migrar una colección no particionada, consulta el comando moveCollection.
Ejemplos
Para comenzar la transición a un servidor de configuración dedicado, utiliza el método db.adminCommand() para ejecutar el comando startTransitionToDedicatedConfigServer:
db.adminCommand( { startTransitionToDedicatedConfigServer: 1 } )
Para comprobar el estado de la operación de vaciado, utilice el comando getTransitionToDedicatedConfigServerStatus:
db.adminCommand( { getTransitionToDedicatedConfigServerStatus: 1 } )
{ "state" : "ongoing", "remaining" : { "chunks" : NumberLong(2), "collectionsToMove" : NumberLong(1), "dbs" : NumberLong(1), "jumboChunks" : NumberLong(0), "estimatedRemainingBytes" : NumberLong(18) }, "msg" : "draining ongoing", "dbsToMove" : [ "testDB" ], "note" : "you need to call moveCollection for collectionsToMove and afterwards movePrimary for the dbsToMove", "collectionsToMove" : [ "testDB.testCollUnsharded" ], "ok" : 1, "$clusterTime" : { "clusterTime" : Timestamp(1772210444, 27), "signature" : { "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="), "keyId" : NumberLong(0) } }, "operationTime" : Timestamp(1772210444, 27) }