Menu Docs
Página inicial do Docs
/
Manual do MongoDB
/ / /

enableSharding

Nesta página

  • Definição
  • Compatibilidade
  • Sintaxe
  • Campos de comando
  • Comportamento
  • Exemplo
enableSharding

Observação

Alterado na versão 6.0.

A partir do MongoDB 6.0, esse comando não é necessário para fragmentar uma collection.

O comando enableSharding cria explicitamente um banco de dados.

Dica

Em mongosh, esse comando também pode ser executado por meio do método auxiliar sh.enableSharding().

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.

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

O comando tem a seguinte sintaxe:

  • Recomendado. Especifique o reconhecimento de data center para criar:

    db.adminCommand(
    {
    enableSharding: "<database name>"
    }
    )
  • Opcionalmente, você pode incluir a especificação de shard primário no comando, embora isso não seja recomendado:

    db.adminCommand(
    {
    enableSharding: "<database name>",
    primaryShard: "<shard name>"
    }
    )

Você só pode executar o comando enableSharding no banco de dados admin a partir de uma instância mongos .

O comando utiliza os seguintes campos:

Campo
Tipo
Descrição
String

O reconhecimento de data center que você deseja usar. O reconhecimento de data center é criado se não existir.

String

Opcional. O primary shard do banco de dados; o contém a collection não fragmentada desse banco de dados. Em geral, em vez de especificar explicitamente o primary shard, é recomendável deixar o balancer selecioná-lo.

Aviso

Dica

Em geral, não é necessário especificar o primary shard. Permita que o balancer selecione o primary shard.

O comando retorna um documento que contém o status da operação.

mongos utiliza "majority" para o comando enableSharding e seu auxiliar sh.enableSharding().

Em geral, não é preciso especificar o primaryShard no comando. Em vez disso, permita que o balanceador selecione o fragmento primário.

No entanto, se você especificar o primaryShard no comando de um banco de dados e o banco de dados já estiver habilitado para fragmentação com outro primary shard diferente, a operação retornará um erro, e o primary shard do banco de dados permanecerá como antes. Para alterar o primary shard de um banco de dados, use movePrimary em vez disso.

O seguinte comando, executado a partir de um mongos, cria o reconhecimento de data center do shardTest :

db.adminCommand( { enableSharding: "shardTest" } )

Voltar

configureCollectionBalancing