Definición
sh.enableSharding(database, primaryShard)Nota
Cambiado en la versión 6.0.
A partir de MongoDB 6.0, este método no se requiere para partición una colección.
Crea explícitamente una base de datos. Utilice el
mongoshmétodosh.shardCollection()para fragmentar colecciones en la base de datos. El métodomongoshsh.enableSharding()envuelve el comandoenableSharding.Importante
Método mongosh
Esta página documenta un método
mongosh. Esta no es la documentación para los comandos de base de datos ni para los drivers específicos de lenguajes, como Nodo.js.Para el comando de base de datos, consulta el comando
enableSharding.Para los drivers de API de MongoDB, consulte la documentación del driver de MongoDB específica del lenguaje.
Compatibilidad
Este método está disponible en implementaciones alojadas en los siguientes entornos:
MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
Importante
Este comando no es compatible con los clústeres M0 y Flex. Para obtener más información, consulta Comandos no compatibles.
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 tiene la siguiente sh.enableSharding() forma:
sh.enableSharding( <database>, <primary shard> // Optional. )
Parameter
El método sh.enableSharding() toma los siguientes parámetros:
Parameter | Tipo | Descripción |
|---|---|---|
String | El nombre de la base de datos que desea crear. | |
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. |
Comportamiento
Nivel de confirmación de escritura
mongos utiliza "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 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 como antes. Para cambiar la partición primaria de una base de datos, use el comando movePrimary en su lugar.
Ejemplo
El siguiente ejemplo, ejecutado desde un mongos, crea explícitamente la base de datos shardTest:
sh.enableSharding("shardTest")
Para verificar, ejecuta sh.status().