Definição
getTransitionToDedicatedConfigServerStatusMostra o status da transição de um servidor de configuração incorporado para um servidor de configuração dedicado .
O comando retorna
ok: 0com um erro se a transição falhar, caso contrário, retornaok: 1.Para iniciar a transição para um servidor de configuração dedicado, consulte o comando
startTransitionToDedicatedConfigServer.Para interromper a transição em andamento de um servidor de configuração incorporado para um servidor de configuração dedicado, consulte o comando
stopTransitionToDedicatedConfigServer.Para confirmar a transição de um servidor de configuração incorporado para um servidor de configuração dedicado, consulte o comando
commitTransitionToDedicatedConfigServer.Dica
In
mongosh, this command can also be run through thesh.shardDrainingStatus()and.Helper methods are convenient for
mongoshusers, but they may not return the same level of information as database commands. In cases where the convenience is not needed or the additional return fields are required, use the database command.Novidades na versão 8.3.
Compatibilidade
Esse comando está disponível em implantações hospedadas nos seguintes ambientes:
MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB
MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB
Observação
This command is not supported in MongoDB Atlas. See Modify your Atlas Sharded Cluster to drain the embedded config server.
Sintaxe
O comando tem a seguinte sintaxe:
db.adminCommand( { getTransitionToDedicatedConfigServerStatus: 1 } )
Campos de Saída
Este comando retorna a seguinte saída:
Campo | Tipo | Descrição |
|---|---|---|
| string | Fornece a operação de drenagem atual que está sendo executada pelo balanceador. |
| string | Fornece o status da transição para um servidor de configuração dedicado . |
| documento | Mostra as tarefas restantes que o balanceador deve executar para drenar o fragmento antes de fazer a transição completa para um servidor de configuração dedicado. |
| long | Indica o número de partes que ainda estão no fragmento. |
| long | Indica o número de bancos de dados que ainda estão no fragmento. |
| long | Indica o número de partes grandes ainda no fragmento. |
| long | Indica o número de collections que ainda estão no fragmento. |
| long | Número estimado de bytes restantes no shard em processo de remoção. |
| string | Fornece uma mensagem adicional para o usuário. |
| array | Indica bancos de dados que usam o shard de drenagem como fragmento primário. Antes de fazer a transição completa para um servidor de configuração dedicado, mova manualmente esses bancos de dados para um novo fragmento usando o comando |
| array | Indica coleções não fragmentadas armazenadas no fragmento de drenagem. Antes de poder fazer a transição completa para um servidor de configuração dedicado, mova manualmente essas coleções para outro fragmento usando o comando |
| long | O número de exclusões de faixa pendentes restantes no shard que está sendo removido. Presente apenas durante uma operação |
| string | A primeira coleção não vazia no shard em processo de remoção. Presente apenas durante uma operação de |
Comportamento
Requisitos de acesso
Se você tiver authorization habilitado, deverá ter a função clusterManager ou qualquer função que inclua a ação removeShard .
Requisitos de migração de reconhecimento de data center
Se o servidor de configuração incorporado também for o primário de um dos bancos de dados do cluster, você deverá mover manualmente os bancos de dados para um novo fragmento após migrar todos os dados do fragmento. Consulte o comando movePrimary e Remover fragmentos de um cluster fragmentado para obter mais informações.
Requisitos de migração de coleção
Se uma das collections não fragmentadas estiver no servidor de configuração incorporado, você deverá primeiro migrar a collection para um fragmento diferente.
Para migrar uma collection não fragmentada, consulte o comando moveCollection.
Exemplos
Para iniciar a transição para um servidor de configuração dedicado, use o método db.adminCommand() para executar o comando startTransitionToDedicatedConfigServer:
db.adminCommand( { startTransitionToDedicatedConfigServer: 1 } )
Para verificar o status da operação de drenagem , use o 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) }