Definição
removeShardFromZoneO comando administrativo remove a associação entre um fragmento e
removeShardFromZoneuma zona.Dica
mongoshEm, esse comando também pode ser executado por meio do métodosh.removeShardFromZone()assistente.Os métodos auxiliares são convenientes para os
mongoshusuários, mas podem não retornar o mesmo nível de informações que os comandos do banco de dados . Nos casos em que a conveniência não for necessária ou os campos de retorno adicionais forem necessários, use o comando de banco de dados.
Compatibilidade
Esse comando está disponível em implantações hospedadas nos seguintes ambientes:
- MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem
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
Sintaxe
Você pode somente executar removeShardFromZone no admin banco de dados do a partir de uma instância mongos do.
O comando tem a seguinte sintaxe:
db.adminCommand( { removeShardFromZone: <string>, zone: <string> } )
Campos de comando
O comando utiliza os seguintes campos:
Campo | Tipo | Descrição |
|---|---|---|
string | O nome do shard do qual remover a associação de zona . | |
string | O nome da zona cuja associação com o shard você deseja remover. |
mongosh fornece o método sh.removeShardFromZone() assistente.
Comportamento
removeShardFromZone não remove as faixas associadas à zona.
Para remover completamente uma zona do cluster, você deve executar em cada shard associado à removeShardFromZone zona.
Se o fragmento especificado for o último fragmento associado à zona, você deverá garantir que não haja intervalos de chaves de fragmento restantes associados à zona. Use para remover quaisquer faixas existentes associadas à zona antes updateZoneKeyRange de removeShardFromZone executar.
Consulte a página do manual de zonas para obter mais informações sobre zonas em clusters fragmentados.
Segurança
Para clusters fragmentados que impõem controle de acesso, você deve autenticar como:
um usuário cujos privilégios incluem
enableShardingno recurso do cluster .
As funções clusterAdmin embutidas ou clusterManager têm as permissões apropriadas para removeShardFromZone emitir. Consulte a página do manual Controle de acesso baseado em funções para obter mais informações.
Exemplo
O exemplo a seguir remove a associação entre shard0000 e a zona NYC:
db.adminCommand( { removeShardFromZone : "shard0000" , zone : "NYC" } )