addShard
Definição
addShard
Adiciona um conjunto de réplicas fragmentadas em umcluster fragmentado .
Dica
Em
mongosh
, esse comando também pode ser executado por meio do método auxiliarsh.addShard()
.Os métodos auxiliares são práticos para os usuários
mongosh
, mas podem não retornar o mesmo nível de informações que os comandos do banco de dados. Nos casos em que a praticidade 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
Importante
Este comando não é suportado em instâncias sem servidor. Para obter mais informações, consulte Comandos não suportados.
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
O comando tem a seguinte sintaxe:
db.adminCommand( { addShard: "<replica_set>/<hostname><:port>", name: "<shard_name>" } )
Campos de comando
Observação
A partir da versão 6.2, O MongoDB remove o maxSize
campo do comando addShard
. Como resultado:
O comando contém os seguintes campos:
Campo | Tipo | Descrição | |
---|---|---|---|
| string | O nome do conjunto de réplicas, nome do host e porta de pelo menos um membro do conjunto de réplicas do shard. Quaisquer nomes de host do membro do conjunto de réplicas adicionais devem ser separados por vírgula. Por exemplo:
| |
| string | Opcional. Um nome para o fragmento. Se isso não for especificado, o MongoDB fornecerá automaticamente um nome exclusivo. |
O comando addShard
armazena informações de configuração de shard no banco de dados de configuração de dados de configuração. Execute sempre addShard
ao utilizar o banco de banco de dados do admin
.
Considerações
Equilíbrio
Quando você adiciona um shard a um cluster fragmentado, afeta o equilíbrio de blocos entre os shards de um cluster para todas as coleções fragmentadas existentes. O balancer começará a migrar blocos para que o cluster atinja o equilíbrio. Consulte Internais do Balancer para mais informações.
membro oculto
Importante
Não é possível incluir um membro oculto na lista de sementes fornecida a addShard
.
Operações de DDL
Se você adicionar um shard enquanto o cluster executa uma operação DDL (operação que modifica uma collection como reshardCollection
), addShard
só será executado depois que a operação DDL simultânea for concluída.
Exemplos
O seguinte comando adiciona um conjunto de réplicas como um fragmento:
use admin db.runCommand( { addShard: "repl0/mongodb3.example.net:27327"} )
Aviso
Não use localhost
para o nome do host, a menos que seu servidor de configuração também esteja sendo executado em localhost
.