Definición
sh.enableSharding(database, primaryShard)Nota
Cambiado en la versión 6.0.
A partir de MongoDB,6.0 este método no es necesario. Fragmentar una colección.
Crea una base de datos explícitamente. Usa el método
mongoshsh.shardCollection()para fragmentar colecciones en la base de datos. El métodomongoshsh.enableSharding()encapsula 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 fragmento principal de la base de datos; este fragmento contiene la colección no fragmentada de esta base de datos. En general, en lugar de especificar explícitamente el fragmento principal, se recomienda dejar que el balanceador lo seleccione. AdvertenciaTipEn general, no debería ser necesario especificar el fragmento principal. Permita que el balanceador lo seleccione. |
Comportamiento
Nivel de confirmación de escritura
mongos usa "majority" para el comando y enableSharding su sh.enableSharding() ayudante.
Fragmento primario
En general, no debería ser necesario especificar el fragmento principal en el comando. En su lugar, permita que el balanceador seleccione el fragmento principal.
Sin embargo, si especifica el fragmento principal de una base de datos y esta ya está habilitada para la fragmentación con un fragmento principal diferente, la operación devuelve un error y el fragmento principal permanece igual. Para cambiar el fragmento principal de una base de datos, utilice el movePrimary comando.
Ejemplo
El siguiente ejemplo, ejecutado desde un mongos, crea explícitamente la base de datos shardTest:
sh.enableSharding("shardTest")
Para verificar,sh.status() ejecute.