Definición
enableShardingNota
Cambiado en la versión 6.0.
A partir de MongoDB,6.0 este comando no es necesario partición una colección.
La
enableShardingEl comando crea explícitamente una base de datos.Tip
En
mongosh, este comando también se puede ejecutar a través del método asistentesh.enableSharding().Los métodos asistente son convenientes para usuarios de
mongosh, pero es posible que no proporcionen el mismo nivel de información que los comandos de base de datos. En los casos en que no se necesite la conveniencia o se requieran campos de retorno adicionales, utiliza el comando de base de datos.
Compatibilidad
Este comando está disponible en implementaciones alojadas en los siguientes entornos:
MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
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.
Sintaxis
El comando tiene la siguiente sintaxis:
Recomendado. Especifica la base de datos que se va a crear:
db.adminCommand( { enableSharding: "<database name>" } ) Opcionalmente, puede incluir la especificación del fragmento principal en el comando, aunque esto no se recomienda:
db.adminCommand( { enableSharding: "<database name>", primaryShard: "<shard name>" } )
Solo puede ejecutar el comando enableSharding en la base de datos admin desde una instancia mongos.
Campos de comandos
El comando toma los siguientes campos:
Campo | Tipo | Descripción |
|---|---|---|
String | La base de datos que desea utilizar. Si no existe, se crea. | |
String | opcional. El partición primaria de la base de datos. Es el shard por defecto para todas las colecciones no particionadas de la base de datos. ADVERTENCIA: En general, no se debe especificar la partición primaria. Permitir que el clúster seleccione la partición primaria en su lugar. |
Devuelve
El comando devuelve un documento que contiene el estado de la operación.
Comportamiento
Nivel de confirmación de escritura
mongos usa "majority" para el comando enableSharding y su asistente sh.enableSharding().
Fragmento primario
En general, no deberías necesitar especificar el primaryShard en el comando. En su lugar, permite que el balanceador seleccione la partición primaria.
Sin embargo, si especificas la partición primaria en el comando para una base de datos y la base de datos ya está habilitada para particionado con una partición primaria diferente, la operación devuelve un error y la partición primaria para la base de datos permanece igual que antes. Para cambiar la partición primaria de una base de datos, utiliza movePrimary en su lugar.
Ejemplo
El siguiente comando, ejecutado desde un, crea mongos la shardTest base de datos:
db.adminCommand( { enableSharding: "shardTest" } )