Definición
listShardsEl comando devuelve una lista de
listShardslistShardslos fragmentos configurados en un clúster fragmentado. solo está disponible enmongosinstancias y deben emitirse contra laadminbase 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:
db.runCommand( { listShards: 1 } )
Ejemplo
La siguiente operación ejecuta listShards contra la base de datos mongos admin:
db.adminCommand({ listShards: 1 })
El siguiente documento es un ejemplo de la salida de un listShards comando:
{ "shards": [ { "_id": "shard01", "host": "shard01/host1:27018,host2:27018,host3:27018", "state": 1 }, { "_id": "shard02", "host": "shard02/host4:27018,host5:27018,host6:27018", "tags": [ "NYC" ], "state": 1 }, { "_id": "shard03", "host": "shard03/host7:27018,host8:27018,host9:27018", "maxSize": NumberLong("1024"), "state": 1 } ], "ok": 1, "$clusterTime" : { "clusterTime" : Timestamp(1510716515, 1), "signature" : { "hash" : BinData(0,"B2ViX7XLzFLS5Fl9XEuFXbwKIM4="), "keyId" : Long("6488045157173166092") } }, "operationTime" : Timestamp(1510716515, 1) }
Salida
listShards devuelve un documento que incluye:
Un campo
shardsque contiene una matriz de documentos, cada uno de los cuales describe un fragmento. Cada documento puede contener los siguientes campos:CampoDescripción_idEl nombre del fragmento.
hostEl nombre de host del fragmento. Si el fragmento es un conjunto de réplicas,
hostmuestra el nombre de host de cada instancia de mongod en el conjunto de réplicas.drainingSi es verdadero, indica que se ha llamado a removeShard (comando de base de datos) para este fragmento y está en proceso de vaciarse.
tagsUna lista de zonas a las que pertenece el fragmento.
maxSizeEl tamaño máximo de almacenamiento configurado del fragmento en megabytes. Esto incluye todos los archivos de datos del fragmento, incluidas las bases de datos
localadminy. Si se supera, este fragmento no recibirá más fragmentos.stateUn campo interno utilizado durante la secuencia addShard (comando de base de datos) para garantizar que se completen todos los pasos y la configuración necesarios para agregar el fragmento al clúster.
El campo de estado
ok, el campooperationTimey el campo$clusterTimepara la operación. Para obtener detalles sobre estos campos, ver Response.