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.
Menu Docs

transactionToDedicatedConfigServer (comando de banco de dados)

transitionToDedicatedConfigServer

Novidades na versão 8.0.

A partir do MongoDB 8.0, você pode:

  • Configure um servidor de configuração para armazenar os dados do seu aplicativo, além dos metadados usuais do cluster fragmentado. Um servidor de configuração que armazena dados do aplicativo é chamado de fragmento de configuração.

  • Transição entre um shard de configuração e um servidor de configuração dedicado.

Cada cluster fragmentado requer um servidor de configuração. Um shard de configuração se qualifica como um servidor de configuração. Use um shard de configuração em vez de um servidor de configuração dedicado para reduzir o número de nós necessários e simplificar seu sistema.

Um servidor de configuração dedicado requer seu próprio conjunto de réplicas. Um shard de configuração combina a role de servidor de configuração com um conjunto de réplicas de shard existente, portanto seu cluster precisa de menos conjuntos de réplicas e custa menos. O uso de um shard de configuração não tem impacto mensurável no desempenho em contagens baixas de shard.

Um servidor de configuração dedicado isola os metadados do cluster dos dados do aplicação . Algumas funcionalidades exigem esse isolamento. Para saber qual sistema se adequa ao seu cluster, consulte Casos de uso de config shard.

O comando transitionToDedicatedConfigServer configura um shard de configuração para ser executado como um servidor de configuração dedicado. O comando faz com que o balanceador priorize a movimentação dos chunks do shard de configuração para outros shards no cluster.

Antes de executar transitionToDedicatedConfigServer, conecte-se a mongos e use o banco de banco de dados admin.

O cluster fragmentado deve ter featureCompatibilityVersion definido para pelo menos 8.0.

Sintaxe do comando:

db.adminCommand( {
transitionToDedicatedConfigServer: 1
} )

O comando transitionToDedicatedConfigServer move dados do aplicação do shard de configuração para os outros shards da mesma maneira que removeShard move dados. O balanceador move dados de coleta fragmentados para outros fragmentos elegíveis no cluster. Você deve mover dados de coleta e bancos de dados não fragmentados para um fragmento de sua escolha no cluster. Para obter o procedimento de remoção de um fragmento de configuração, consulte Remover fragmentos de um cluster fragmentado.

Internamente, o transitionToDedicatedConfigServer executa o comando removeShard . transitionToDedicatedConfigServer retorna a mesma resposta que removeShard. A resposta após uma movimentação de dados bem-sucedida contém state: "completed". Para obter detalhes e exemplos completos de respostas, consulte Exemplo de removeShard. Revise a documentação do removeShard antes de executar o transitionToDedicatedConfigServer para entender como ela pode afetar seu sistema.

Se você executar transitionToDedicatedConfigServer duas vezes e os dados do fragmento estiverem sendo movidos para outros shards, a segunda execução do transitionToDedicatedConfigServer retornará o status atual da movimentação de dados. transitionToDedicatedConfigServer retorna a mesma resposta que removeShard.

Após transitionToDedicatedConfigServer concluir a transferência de dados, o servidor de servidor de configuração é um servidor de configuração dedicado e não é mais um fragmento de configuração.

Se o controle de acesso estiver habilitado, o comando transitionToDedicatedConfigServer exigirá a ação de autorização transitionToDedicatedConfigServer para o cluster:

{
resource: { cluster : true },
actions: [ "transitionToDedicatedConfigServer" ]
}

A função clusterManager tem ação de autorização transitionToDedicatedConfigServer e pode ser atribuída a um usuário.

O exemplo a seguir atribui a função clusterManager a um usuário chamado testUser:

db.grantRolesToUser(
"testUser",
[ "clusterManager" ]
)

O exemplo a seguir configura um shard de configuração para ser executado como um servidor de configuração dedicado:

db.adminCommand( {
transitionToDedicatedConfigServer: 1
} )

Para obter detalhes, consulte Fazer Downgrade da Versão de Compatibilidade de Funcionalidades.