Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Menu Docs
Página inicial do Docs
/ /

shardDrainingStatus (comando de banco de dados)

shardDrainingStatus

Mostra o status de um shard de drenagem , se o balanceador ainda está movendo chunks para outros shards no cluster ou se o processo está concluído.

O comando retorna um erro se o shard não existir, caso contrário, retorna o status da operação de drenagem .

Para iniciar a drenagem de um shard, consulte o startShardDraining comando.

Para interromper a drenagem de um shard, consulte o comando stopShardDraining .

Para remover um shard drenado, consulte o commitShardRemoval comando.

Novidades na versão 8.3.

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 Atlas Cluster Sharded para adicionar ou remover shards do seu Atlas cluster.

O comando tem a seguinte sintaxe:

db.adminCommand( {
shardDrainingStatus: <shard>
} )

Este comando retorna a seguinte saída:

Campo
Tipo
Descrição

msg

string

Fornece a operação de drenagem atual que está sendo executada pelo balanceador.

state

string

Fornece o status da operação de drenagem .

shard

string

Indica o shard de drenagem .

remaining

documento

Mostra as tarefas restantes que o balanceador deve executar para drenar o shard.

remaining.chunks

long

Indica o número de chunks que ainda estão no shard.

remaining.dbs

long

Indica o número de bancos de dados que ainda estão no shard.

remaining.jumboChunks

long

Indica o número de chunks grandes ainda no shard.

remaining.collectionsToMove

long

Indica o número de collections que ainda estão no shard.

note

string

Fornece uma mensagem adicional para o usuário.

dbsToMove

array

Indica bancos de dados que usam o shard de drenagem como fragmento primário. Antes de remover o fragmento do cluster, você deve mover manualmente esses bancos de dados para um novo fragmento usando o movePrimary comando.

collectionsToMove

array

Indica collections não fragmentadas armazenadas no shard de drenagem . Antes de remover o fragmento do cluster, você deve mover manualmente essas coleções para outro fragmento usando o moveCollection comando.

Se você tiver authorization habilitado, deverá ter a função clusterManager ou qualquer função que inclua a ação removeShard .

Cada banco de dados em um cluster fragmentado tem um fragmento primário. Se o fragmento que você deseja drenar também for o principal de um dos bancos de dados do cluster, você deverá mover manualmente os bancos de dados para um novo fragmento depois de migrar todos os dados do fragmento. Consulte movePrimary o comando e Remover fragmentos de um cluster fragmentado para obter mais informações.

As coleções não fragmentadas são armazenadas em shards individuais. Se uma dessas coleções estiver no fragmento que você deseja remover, primeiro você deverá migrar a coleção para um fragmento diferente.

Para migrar uma collection não fragmentada, consulte o moveCollection comando.

Para iniciar a drenagem de um shard, use o método db.adminCommand() startShardDraining para executar o comando:

db.adminCommand( { startShardDraining: "shard04" } )

Para verificar o status da operação de drenagem , use o comando shardDrainingStatus:

db.adminCommand( { shardDrainingStatus: "shard04" } )
{
msg: "draining ongoing",
state: "ongoing",
remaining: {
chunks: Long(2),
dbs: Long(2),
jumboChunks: Long(0),
collectionsToMove: Long(2)
},
shard: "shard04",
note: "you need to call moveCollection for collectionsToMove and afterwards movePrimary for the dbsToMove",
dbsToMove: [
"fizz",
"buzz"
],
collectionsToMove: [
"fizz.coll1",
"buzz.coll1"
],
ok: 1,
operationTime: Timestamp(1575399086, 1655),
$clusterTime: {
clusterTime: Timestamp(1575399086, 1655),
signature: {
hash: BinData(0,"XBrTmjMMe82fUtVLRm13GBVtRE8="),
keyId: Long("6766255701040824328")
}
}
}

Voltar

sharedCollection

Nesta página