Definição
Mostra o status da transição de um servidor de configuração incorporado para um servidor de configuração dedicado .
O comando retorna ok: 0 com um erro se a transição falhar, caso contrário, retorna ok: 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.
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
Este comando não é suportado no MongoDB Atlas. Consulte Modificar seu cluster fragmentado do Atlas para drenar o servidor de configuração incorporado.
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. |
| 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 |
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) }