Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.

rs.remove() (método mongosh)

rs.remove(hostname)

Remove o membro descrito pelo parâmetro hostname do conjunto de réplica atual. Essa função desconectará o shell brevemente e forçará uma reconexão à medida que o conjunto de réplicas renegociar qual membro será o principal. Como resultado, o shell exibirá um erro mesmo se este comando for bem-sucedido.

O método rs.remove() tem o seguinte parâmetro:

Parâmetro
Tipo
Descrição

hostname

string

O nome do host de um sistema no conjunto de réplicas.

Observação

Antes de executar a operação rs.remove(), é uma boa prática desligar o membro do conjunto de réplicas que você estiver removendo.

Esse método 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

Remover um nó altera o número de nós de votação no conjunto de réplicas, o que pode alterar o write concern padrão implícito.

Você deve definir explicitamente o padrão global write concern antes de tentar reconfigurar um conjunto de réplicas com uma configuração que alteraria o write concern padrão implícito. Para definir a write concern padrão global, utilize o comando setDefaultRWConcern.

rs.remove() executa o comando replSetReconfig com uma configuração que omite o nó removido. O método aguarda até que a maioria dos nós votantes do conjunto de réplicas instale a nova configuração de réplica antes de retornar sucesso. Um nó votante é qualquer nó do conjunto de réplicas onde members[n].votes é 1, incluindo árbitros. Para aprender como os nós do conjunto de réplicas instalam uma nova configuração, consulte A reconfiguração aguarda até que a maioria dos nós instale a configuração de réplica.

rs.remove() não aceita um limite de maxTimeMS. Se a maioria dos nós votantes nunca instalar a nova configuração, a operação aguarda indefinidamente.

Por padrão, os membros do conjunto de réplicas aguardam 5 minutos antes de descartar conexões com o membro removido. Em conjuntos de réplicas fragmentadas, você pode modificar esse tempo limite usando o parâmetroShardingTaskExecutorPoolHostTimeoutMS server.

Para descartar imediatamente todas as conexões de saída do conjunto de réplicas para o nó removido, execute o comando administrativo dropConnections em cada nó restante no conjunto de réplicas:

db.adminCommand( { "dropConnections" : 1, "hostAndPort" : [ "<hostname>:<port>" ] })

Substitua <hostname> pelo nome do host do membro removido e <port> pela porta em que o mongod ouviu.