Esta página descreve as alterações e as novas funcionalidades introduzidas no MongoDB 6.0.
O MongoDB 6.0 é uma versão principal, o que significa que é compatível com os sistemas do MongoDB Atlas e on-premises. O MongoDB 6.0 inclui alterações introduzidas no MongoDB Rapid Releases 5.1, 5.2 e 5.3. Esta página descreve as alterações introduzidas nessas Rapid Releases as e no MongoDB 6.0.
Para saber mais sobre as diferenças entre as Rapid Releases e versões principais, consulte Versões do MongoDB .
Aviso
Limitações da versão anterior
Os avisos críticos abaixo afetam algumas versões anteriores do MongoDB. Se sua implantação depender de recursos afetados por um aviso crítico, atualize para a versão de patch mais recente disponível.
Emitir | Versões afetadas |
|---|---|
6.0.0 | |
6.0.0 - 6.0.12 | |
6.0.0 - 6.0.11 (Coleção de séries temporais fragmentadas por objetos embarcados metaField) | |
6.0.0 - 6.0.13 | |
6.0.0 - 6.0.4 (arquiteturas de sistema ARM64 ou POWER) | |
6.0.0 - 6.0.5 (Backups incrementais no Ops Manager ou clusters do Cloud Manager) | |
6.0.0 - 6.0.16 | |
6.0.0 - 6.0.14 |
Lançamentos de patches
6.0.27 - 19 de dezembro de 2025
Importante
MongoDB 6.0.27 contém uma correção para CVE-2025-14847.
Para obter as informações mais recentes sobre as atualizações de segurança do MongoDB, consulte Boletins de segurança do MongoDB.
Problemas corrigidos:
SERVIDOR-115508: criar buffers de tamanho mínimo para mensagens descompactadas
6.0.26 - Ago 15 de 2025
Problemas corrigidos:
SERVIDOR-109268: o modo FIPS pode permitir o uso de algoritmos criptográficos de provedores não compatíveis com FIPS com OpenSSL 3
6.0.25 - 17 de julho de 2025
Problemas corrigidos:
SERVER-83221: as Coleções agrupadas listIndexes devem mostrar TTL
SERVIDOR-92411: teste todos os estágios de agregação da origem do documento com verificações de autenticação
SERVER-95523: o upsert não lida corretamente com a nova tentativa de DuplicateKey
SERVER-95524: evite tentar novamente em caso de erro de chave duplicada para upserts em transações com vários documentos
SERVER-95672: índices em campos de array que contêm sub-arrays não incluem alguns resultados
6.0.24 - 04 junho, 2025
SERVIDOR-82037: a memória usada pelos derramamentos do classificador pode crescer sem limite
SERVER-88400: o estágio de agregação shardedDataDistribution não deve retornar campos nulos para séries temporais
SERVER-92806: a entrada do cache do plano ignora o agrupamento do índice com $elemMatch
SERVIDOR-95976: introduzir o parâmetro "matchCollectionUUIDForUpdateLookup" no estágio do change stream
WT-13283 Corrige o modo agressivo do cache para não mostrar o valor do lixo
6.0.23 - abr 29 de 2025
Importante
A correção para o manuseio incorreto de dados incompletos pode impedir que os mongos aceitem novas conexões
Devido ao CVE-2025-6714, no MongoDB 6.0 antes de 6.0.23, O componente mongos do servidor MongoDB pode deixar de responder a novas conexões devido ao manuseio incorreto de dados incompletos. Esse problema afeta clusters MongoDB fragmentados que são configurados com suporte a balanceador de carga para mongos usando HAProxy em portas especificadas.
Esse problema afeta as seguintes versões do MongoDB Server:
8.0.0 - 8.0.8
7.0.0 - 7.0.19
6.0.0 - 6.0.22
Pontuação CVSS: 7.5
CWE: CWE-834 iteração excessiva E CWE-400 consumo descontrolado de recursos
Problemas corrigidos:
SERVER-93120: collection FTDC bloqueada na leitura bloqueada do estado backupCursor
SERVIDOR-106753: o manuseio incorreto de dados incompletos pode impedir que
mongosaceite novas conexões
6.0.22 - abr 14 de 2025
Importante
O MongoDB Server pode ser suscetível ao escalonamento de privilégio devido ao estágio $mergeCursors
Devido ao CVE-2025-6713, no MongoDB 6.0 antes de 6.0.22, um usuário não autorizado pode aproveitar um pipeline de agregação especialmente criado para acessar dados sem a autorização adequada devido ao manuseio inadequado do estágio $mergeCursors em MongoDB Server. Isso pode levar ao acesso a dados sem autorização adicional .
Esse problema afeta as seguintes versões do MongoDB Server:
8.0.0 - 8.0.6
7.0.0 - 7.0.18
6.0.0 - 6.0.21
Pontuação CVSS: 7.7
CWE: CWE-285: autorização imprópria
Problemas corrigidos:
SERVIDOR-106752 O MongoDB Server pode ser suscetível ao escalonamento de privilégio devido ao estágio
$mergeCursors
6.0.21 - Mar 17, 2025
Importante
vulnerabilidade de negação de serviço de pré-autenticação na autenticação OIDC do servidor MongoDB
Devido ao CVE-2025-6709, no MongoDB 6.0 antes de 6.0.21, O MongoDB Server é suscetível a uma vulnerabilidade de negação de serviço devido ao manuseio inadequado de valores de data específicos na entrada JSON ao usar a autenticação OIDC. Isso pode ser reproduzido usando o mongo shell para enviar uma carga útil de JSON maliciosa, levando a uma falha invariante e à falha do servidor .
Esse problema afeta as seguintes versões do MongoDB Server:
8.0.0 - 8.0.4
7.0.0 - 7.0.16
O mesmo problema afeta o MongoDB Server v6.0, mas um invasor só pode induzir a negação de serviço após a autenticação. Esse problema afeta as seguintes versões do MongoDB Server :
6.0.0 - 6.0.20
Pontuação CVSS: 7.5
CWE: CWE-20: validação de entrada inadequada
Importante
Negação de pré-autenticação da vulnerabilidade de estouro de pilha de serviço na análise de JSON por meio de recursão excessiva no MongoDB
Devido ao CVE-2025-6710, no MongoDB 6.0 antes de 6.0.21, O MongoDB Server pode ser suscetível ao Stack Overflow devido ao mecanismo de análise JSON, em que entradas JSON especificamente criadas podem induzir níveis desnecessários de recursão, resultando em consumo excessivo de espaço de pilha. Essas entradas podem levar a um Stack Overflow que faz com que o servidor falhe, o que pode ocorrer na pré-autorização.
Esse problema afeta as seguintes versões do MongoDB Server:
8.0.0 - 8.0.4
7.0.0 - 7.0.16
O mesmo problema afeta o MongoDB Server v6.0, mas um invasor só pode induzir a negação de serviço após a autenticação. Esse problema afeta as seguintes versões do MongoDB Server :
6.0.0 - 6.0.20
Pontuação CVSS: 7.5
CWE: CWE-674: recursão descontrolada
Problemas corrigidos:
SERVIDOR-94405 Reative a divisão automática na coleção de sessões ao fazer o downgrade para FCV 5.0
SERVIDOR-96252 "setOrphanCountersOnRangeDeletionTasks" falhará se o índice da chave de fragmento estiver ausente
SERVER-98720 Adicionar chamadas redact() ausentes aos registros de aviso de "Erro do executor do plano"
SERVER-100594 Profundidade máxima fromjson mais baixa de 250 para 200
SERVER-101298 Desative o bloqueio PBWM antes de obter o bloqueio global em compacto
SERVER-106748 negação de serviço pré-autenticação ao aceitar a autenticação OIDC
SERVER-106749 vulnerabilidade de estouro de pilha de serviço de pré-autenticação na análise de JSON por meio de recursão excessiva no MongoDB
6.0.20 - 15 janeiro de 2025
SERVIDOR-93205 Expor o número de índices prepareUnique em serverStatus
SERVER-94144 $documents dentro de $lookup falha ao analisar com QueryStats
SERVER-94592 Verifica os argumentos internos para explicar
SERVIDOR-94635 Tornar os parâmetros de atualização da sessão configuráveis
SERVER-95445 SSLManagerOpenSSL deve validar toda a cadeia de certificados em relação à CRL, não apenas na folha
6.0.19 - 24 de outubro de 2024
Importante
A invalidação inadequada de bytes nulos pode levar a leituras excessivas de buffer no MongoDB Server
No MongoDB 6.0 antes de 6.0.19, um usuário autorizado pode desencadear falhas ou receber o conteúdo de leituras excessivas de buffer da memória do servidor emitindo solicitações especialmente criadas que constroem BSON malformado no MongoDB Server.
Esse problema afeta as versões do MongoDB Server :
5.0.0 - 5.0.29
6.0.0 - 6.0.18
7.0.0 - 7.0.14
8.0.0 - 8.0.2
SERVIDOR-96419 A minimização inadequada de bytes nulos pode levar a leituras excessivas de buffer no MongoDB Server
6.0.18 – 30 de setembro de 2024
SERVIDOR-70508 Adicionar contagem de thread atual a extra_info em serverStatus no Linux
SERVER-94166 Desativa o mecanismo de query SBE na v6.0
SERVER-94170 Reverter SERVER-91570
6.0.17 - Ago 21 de 2024
Importante
A correção para a pesquisa automática de CSFLE e Queryable Encryption pode enviar valores em subpipelines como texto simples em vez de texto cifrado
Devido ao CVE-2024-8013, no MongoDB 6.0 antes de 6.0.16, um bug na análise de query de determinados subpipelines auto-referenciais complexos $lookup pode resultar em valores literais em expressões para campos criptografados sendo enviados ao servidor malformado.
Caso isso ocorra, nenhum documento será devolvido ou escrito. Esse problema afeta o binário mongocryptd e a biblioteca compartilhada mongo_crypt_v1 nas seguintes versões do MongoDB Server:
7.3.0 - 7.3.3
7.0.0 - 7.0.11
6.0.0 - 6.0.16
5.0.0 - 5.0.28
Pontuação CVSS: 2.2
CWE: CWE-319: Transmissão de informações confidenciais em texto não criptografado
SERVIDOR-96254 A pesquisa automática de CSFLE e Queryable Encryption pode falhar ao criptografar valores em subpipelines
SERVER-85892 $merge com pipeline após $documents retornar erro
SERVIDOR-91195 Forneça uma solução backportable genérica para não perder as opções de coleção de séries temporais de nível superior
SERVER-91362 Desempenho: não copia o objeto "scope" JS se existir um JsExecution em cache
SERVIDOR-91406 $changeStreamSplitLargeEvent retorna o erro de localização7182803 quando usado com expressão de correspondência não renomeável
WT-12708 Avaliação/revisão da traversal aleatória de remoção
6.0.16 - 28 junho, 2024
SERVIDOR-79637 Resultados de query incorretos em
$lookupcom coleção estrangeira TS usando um predicado correlacionadoSERVIDOR-86474 $_internalApplyOplogUpdate com
$set: { foo: Timestamp(0, 0) }não é replicado corretamenteSERVER-89625 Lida com directoryPerDb e wiredTigerDirectoryForIndexes corretamente ao relatar namespaces e UUIDs durante um backup
WT-10807 Ignora páginas excluídas na memória como parte da caminhada pela árvore
WT-12609 Melhora a limpeza do checkpoint e a lógica de remoção de páginas
6.0.15 - abr 18 de 2024
SERVER-72703 fazer o downgrade do bloqueio do bd do $out para MODE_IX
SERVER-78556 Retornar o padrão de internalInsertMaxBatchSize para 64
SERVIDOR- O80363 WriteConcern padrão do servidor não é respeitado quando o wtimeout é definido
SERVER-83602 a reescrita de $or -> $in MatchExpression não deve gerar $or diretamente aninhado em outro $or
WT-11062 liberação segura do endereço de referência para permitir acesso concomitante
6.0.14 - 28 de fevereiro de 2024
Importante
A correção para o MongoDB Server pode permitir uma conexão não confiável bem-sucedida
Devido ao CVE-2024-1351, no MongoDB 6.0 antes de 6.0.14, sob certas configurações de --tlsCAFile e CAFile, MongoDB Server pode ignorar a validação do certificado de par, o que pode resultar no sucesso de conexões não confiáveis.
Isso pode efetivamente reduzir as garantias de segurança fornecidas pelo TLS e conexões abertas que deveriam ter sido fechadas devido a falha na validação do certificado. Esse problema afeta as seguintes versões do MongoDB Server:
7.0.0 - 7.0.5
6.0.0 - 6.0.13
5.0.0 - 5.0.24
4.4.0 - 4.4.28
Pontuação CVSS: 8.8
CWE: CWE-295: validação de certificado inadequada
SERVER-82353 transações multidocumento podem perder documentos quando o movePrimary é executado simultaneamente
SERVIDOR-83119 A réplica secundária falha na coleção clusterizada se o notablescan estiver habilitado
SERVIDOR-83145 Fragmento de buffer compartilhado acompanha incorretamente o uso de memória em freeUnused()
SERVER-83564 verificar se o campo de processo está indexado em config.locks
WT-12077 Cálculo incorreto de checksum de hardware no zSeries para buffers na pilha
6.0.13 - 18 de janeiro de 2024
SERVER-33494 O WT SizeStorer nunca exclui entradas antigas
SERVER-50792 retornar erros mais úteis quando não for possível encontrar um índice de chave de fragmento para shardCollection/refineCollectionfragmentoKey
SERVER-70155 Adicionar a duração de quanto tempo um slot de oplog é mantido aberto para as linhas de registro da "Query lenta" do mongod
SERVER-77506 as transação multidocumento fragmentadas podem não corresponder aos dados e à ShardVersion
SERVER-83091 $or query pode disparar um loop infinito durante a enumeração do plano
6.0.12 - 27 de novembro de 2023
SERVER-69244 $merge falha quando a preocupação de leitura padrão da sessão foi definida como "majority"
SERVER-81295 Não é possível retomar pipelines do ChangeStream V2 com tokens de recomeço V1
SERVER-81966 Evita a modificação de instâncias anteriores do ChunkMap durante a atualização
WT-7929 investigar uma solução para evitar paralisações do FTDC durante o checkpoint
WT-11564 corrigir o RTS para ler o valor da transação mais recente somente quando ele existir no checkpoint
6.0.11 - 11 de outubro de 2023
SERVER-58534 Coletar FCV no FTDC
SERVER-69244 $merge falha quando a preocupação de leitura padrão da sessão foi definida como "majority"
SERVER-71520 Despejar todas as pilhas de threads no tempo limite de aquisição RSTL
SERVER-79498 Transporta de volta $vectorSearch para 6.0
SERVER-80021 fazer $convert ida e volta corretamente entre double e string
6.0.10 - 14 de setembro de 2023
SERVER-71627 As informações atualizadas da rota de coleção em cache bloqueiam severamente todas as solicitações do cliente quando um cluster contém 1 milhão de partes
SERVER-73394 Remover métricas enganosas de operationsBlockedByRefresh
SERVER-77183 $project seguido de $group às vezes apresenta resultados incorretos
SERVIDOR-79771 Faz com que as operações de refragmentação se tornem resilientes a networkInterfaceExceededTimeLimit Todas as ocorrências do Jira foram fechadas na versão 6.0.10 6.0.10
6.0.9 - Aug 14, 2023
SERVER-60466 Aceitar drivers para disseminação de $clusterTimes assinados para conjuntos de réplicas --shardsvrs antes da execução do addShard
SERVER-74954 resultado incorreto quando $or contido reescreve a condição extra $elemMatch
SERVER-79136 resultado de query incorreto de $match + $group no metaField durante séries temporais
WT-10759 não tente forçar novamente a remoção de páginas de armazenamento de histórico durante a reconciliação
WT-11064 ignorar tombstones visíveis globalmente como parte da verificação de atualização obsoleta
6.0.8 - 13 de julho de 2023
SERVER-61127 As várias gravações podem esgotar o número de tentativas de repetição na presença de migrações de partes em andamento
SERVIDOR-77005 Deixar os usuários LDAP conectados durante o tempo de inatividade do LDAP
SERVER-78126 para tipos específicos de entrada, mongo::Value() sempre faz hashes com o mesmo resultado em plataformas big-endian
6.0.7 - Jun 28, 2023
SERVER-71985 tentar inserir novamente a série temporal automaticamente em caso de erro DuplicateKey
SERVER-73007 CURL_OPT_SEEKFUNCTION não definido para autenticação multipassagem
SERVER-74551 WriteConflictException desnecessariamente registrada como aviso durante FindAndModify após a upgrade para o mongo 5.0
SERVER-77018 impasse entre dbStats e 2 construções de índice
WT-10449 não salvar a cadeia de atualizações quando não houver atualizações a serem gravadas no armazenamento de histórico
WT-11031 corrigir RTS para ignorar tabelas sem informações de janela de tempo no checkpoint
6.0.6 - 12 de maio de 2023
SERVER-51835 Mongos readPreferenceTags não estão funcionando como esperado
SERVIDOR-67105 $in queries não utilizam índice clusterizado
SERVER-72774 Um nó em modo quiesce pode vencer a eleição
SERVIDOR-74930 $avg está retornando a soma em vez da média no $group agregado
SERVER-75205 impasse entre stepdown e restauração de bloqueios após ceder quando todos os tickets de leitura se esgotarem
6.0.5 - 13 de março de 2023
Aviso
Se você atualizar uma instância existente do MongoDB para o MongoDB 6.0.5, essa instância poderá falhar ao iniciar se fork: true estiver definido no arquivo mongod.conf .
O problema de atualização afeta todas as instâncias MongoDB que utilizam pacotes de instalação do .deb ou .rpm. As instalações que usam a versão tarball (.tgz) ou outros tipos de pacote não são afetadas. Para mais informações, consulte SERVER-74345.
Para remover a configuração fork: true , execute estes comandos a partir de um terminal do sistema:
systemctl stop mongod.service sed -i.bak '/fork: true/d' /etc/mongod.conf systemctl start mongod.service
O segundo comando systemctl inicia a instância atualizada após a configuração ser removida.
Problemas corrigidos:
SERVER-61909 suspender a inserção ou exclusão de documentos com um grande número de entradas de índice
SERVER-66469 Filtrar séries temporais com campo de data não inclui resultados anteriores a 1970
SERVER-68122 Investigue a replicação da string de configuração do WiredTiger da collection durante a sincronização inicial
SERVIDOR-70395 O mecanismo baseado em slot usa disco de forma muito agressiva para $group e é lento
SERVER-73232 Altera o detalhamento de log padrão para
_killOperations
6.0.4 - Jan 26, 2023
Problemas corrigidos:
SERVER-72416 o código de projeção find e findAndModify não honra o agrupamento de nível da coleção
SERVIDOR-71759
dataSizeo comando não produzSERVIDOR-70237 Chunks merge commit não deve criar um objeto BSON muito grande
SERVIDOR-72222
mapReducecom redução única a otimização falha ao mesclar resultados em um cluster fragmentadoWT-9268 atrasar a exclusão do registro de armazenamento de histórico para reconciliação
6.0.3 - 21 de novembro de 2022
Problemas corrigidos:
SERVIDOR-66289 $out lança incorretamente um erro de tamanho BSONObj em v5.0.8
SERVER-68139 o comando Reharding falhará se a classificação de projeção for maior que 100 MB
SERVIDOR-68371 A habilitação do CSFLE em seu MongoClient faz com que o Atlas Search falhe
SERVER-68115 correção de bug para o trigger invariante "ElemMatchRootLength > 0"
SERVER-68394 Garantir que não produzimos bloqueios fortes na recuperação da inicialização quando o índice _id estiver ausente
6.0.2 - 28 de setembro de 2022
Problemas corrigidos:
SERVER-68925 Reintroduzir as configurações de registro da tabela de verificação na inicialização (reverter SERVER-43664)
SERVER-68628 repetir uma operação de refragmentação que falhou após failover primário pode causar falha no servidor ou perda de gravações
SERVER-63852 getThreadName() não pode falhar
SERVER-65317 mongod remove a conexão do pool de conexões após executar uma consulta simples $search
SERVER-63843 não permitir doLog recursivo em manipuladores de sinal síncronos
WT-9870 corrigir a atualização do carimbo de data/hora fixado sempre que o carimbo de data/hora mais antigo for atualizado durante a recuperação
6.0.1 - Aug 19, 2022
Problemas corrigidos:
SERVER-68511 atualização MovePrimary da entrada
config.databasesdeve utilizar notação de campos pontilhadosSERVIDOR-68062 aggregations de múltiplos estágios que utilizam $geoNear podem violar restrições
SERVER-66072 comportamento estranho de agregação de amostragem $match e $group
SERVER-68130 AutoSplitVector pode gerar resposta maior do que BSONObjMaxUserSize
SERVIDOR-68209 Remover o uassert que impede que a entrada
config.image_collectionseja invalidada
6.0.0 - 19 de julho de 2022
O resto desta página descreve as alterações e novas funcionalidades introduzidas no MongoDB 6.0.
Agregação
Novas etapas de agregação
O MongoDB 6.0 introduz os seguintes estágios de aggregation:
Estágio | Descrição |
|---|---|
Cria novos documentos em uma sequência de documentos onde faltam valores em um campo especificado. | |
Retorna documentos literais de expressões de entrada. | |
Preenche | |
Novo na versão 6.0.3: Fornece informações de tamanho e distribuição de dados em collections fragmentadas. |
Novos operadores de aggregation
O MongoDB 6.0 introduz os seguintes operadores de aggregation:
Operador | Descrição |
|---|---|
Retorna o elemento inferior de um grupo de acordo com a ordem de classificação especificada. | |
Retorna uma aggregation dos elementos | |
Retorna uma aggregation dos primeiros | |
Retorna um número especificado de elementos desde o início de uma array. Diferente do accumulator | |
Retorna uma aggregation dos últimos | |
Retorna um número especificado de elementos do final de uma matriz. Distinto do acumulador | |
Preenche | |
Última observação levada adiante. Define valores para | |
Retorna uma aggregation dos | |
Retorna os maiores valores de | |
Retorna uma aggregation dos | |
Retorna os menores valores de | |
Classifica um array com base em seus elementos. | |
Retorna o principal elemento de um grupo de acordo com a ordem de classificação especificada. Diferente do comando | |
Retorna uma aggregation dos principais elementos | |
Retorna o ordinal incrementado de um carimbo de data/hora como | |
Retorna os segundos de um carimbo de data/hora como |
$lookup e $graphLookup com collections fragmentadas
A partir do MongoDB 5.1, os estágios de aggregation $lookup e $graphLookup suportam collections fragmentadas no parâmetro from.
Nas versões anteriores do MongoDB, $lookup e $graphLookup só permitiam collections from não fragmentadas.
Você não pode usar a etapa $graphLookup dentro de uma transação enquanto segmenta uma coleção fragmentada.
Fluxos de alterações
Change Streams otimizados
A partir do MongoDB 5.1, os change streams são otimizados, proporcionando uma utilização mais eficiente dos recursos e uma execução mais rápida de alguns aggregation pipeline stages.
wallTime Campo de saída do change stream
A partir do MongoDB 6.0, a saída de change streams tem um novo campo wallTime que contém a data e a hora do servidor da operação do banco de dados.
Altere fluxos com pré e pós-imagens de documentos
A partir do MongoDB 6.0, você pode usar fluxos de mudança para gerar a versão de um documento antes e depois das alterações (as pré e pós-imagens do documento). Por exemplo, consulte Change Streams com pré e pós-imagens de documentos.
Eventos expandidos do change stream
A partir do MongoDB 6.0, os change streams podem mostrar eventos de mudança adicionais para operações DDL, como criar índices e descartar collections.
Para obter mais informações, consulte Eventos expandidos.
Filtros
A partir do MongoDB 6.0, sempre que possível, os filtros de correspondência são aplicados aos change streams mais cedo do que em versões anteriores. Isso melhora o desempenho. No entanto, quando um filtro for muito restritivo, uma correspondência anterior pode fazer com que uma operação bem-sucedida em versões anteriores falhe na versão 6.0.
Administração de cluster
Cluster Server Parameters
A partir do MongoDB 6.0, você pode usar parâmetros de cluster para uma implantação autogerenciada para modificar e recuperar opções de configuração para todos os nós em um conjunto de réplicas ou cluster fragmentado. Você pode usar setClusterParameter para modificar as opções de todo o cluster e getClusterParameter para recuperar o valor de um parâmetro do cluster.
Parâmetros do pool de conexões
A partir do MongoDB 6.0, você pode usar ShardingTaskExecutorPoolMinSizeForConfigServers e ShardingTaskExecutorPoolMaxSizeForConfigServers para definir o tamanho mínimo e máximo do pool de conexões TaskExecutor de fragmentação para servidores de configuração.
changeStreamOptions Cluster Parameter
A partir do MongoDB 6.0, você pode usar changeStreamOptions para controlar a política de retenção de imagens antes e depois do change stream.
internalSessionsReapThreshold Parâmetro
A partir do MongoDB 6.0, você pode usar o novo parâmetro internalSessionsReapThreshold para definir o limite de sessão para a exclusão de metadados de sessão interna.
Vários arbiters não suportados
A partir do MongoDB 5.3, o suporte para vários arbiters em um conjunto de réplicas está desabilitado por padrão. Para habilitar o suporte para vários árbitros, inicie cada nó com o parâmetro allowMultipleArbiters.
Clustered Collections
A partir do MongoDB 5.3, você pode criar uma collection com um índice agrupado. As collections criadas com um índice clusterizado são chamadas de collections clusterizadas.
Para saber mais sobre os benefícios em comparação com uma collection normal, consulte Coleções Clusterizadas.
Indexes
A partir do MongoDB 5.1, você pode usar o comando de banco de dados collMod para adicionar a opção expireAfterSeconds a um índice não TTL de campo único existente.
Iniciando no MongoDB 6.0, você pode utilizar as opções prepareUnique e unique para o comando collMod para converter um índice padrão existente em um índice único.
Índices Parciais
A partir do MongoDB 6.0, você pode usar os operadores $in e $or para criar índices parciais. A profundidade máxima do partialFilterExpression também foi ampliada de 2 para 4. Agora você pode usar os operadores $and e $or em níveis não principais.
Instalação
Políticas do SELinux
A partir do MongoDB 5.1, há uma nova política SE Linux para:
em execução no Red Hat Linux. A política SELinux deve ser usada com instalações padrão usando pacotes de instalação rpm.
Suporte a plataformas
O MongoDB 6.0.3 introduz suporte para RHEL /CentOS/Oracle/Rocky/AlmaLinux 9.
Para instalar o MongoDB no RHEL, consulte:
Conjuntos de réplicas
Vários arbiters não suportados
A partir do MongoDB 5.3, o suporte para vários arbiters em um conjunto de réplicas está desabilitado por padrão. Para habilitar o suporte para vários árbitros, inicie cada nó com o parâmetro allowMultipleArbiters.
initialSyncMethod Parâmetro
A partir do MongoDB 5.2, initialSyncMethod determina se a initial sync é uma initial sync lógica ou uma initial sync baseada em cópia de arquivo.
initialSyncMethod está disponível apenas no servidor do MongoDB
Enterprise.
Especifique o atraso em lote de oplog secundário
A partir do MongoDB 6.0, você pode usar o parâmetro de servidor oplogBatchDelayMillis para especificar um atraso para gravações de lote de oplog em secundários. Adicionar um pequeno atraso de oplog de lote pode reduzir o IOPS em secundários, mas adiciona latência para gravações com referência de escrita "majority".
Para mais informações, consulte oplogBatchDelayMillis.
Segurança
Criptografia de registros de auditoria
A partir do MongoDB 6.0 Enterprise, você pode criptografar o registro de auditorias do MongoDB.
Para configurar o registro de auditoria, consulte Registro de auditoria.
Parâmetros do servidor MongoDB
mongod adiciona estes parâmetros:
transactionTooLargeForCacheThreshold(A partir do MongoDB 6.0.5.)
Fragmentação
Utilize $shardedDataDistribution para analisar a distribuição de dados fragmentados
A partir do MongoDB 6.0.3, você pode usar o estágio para analisar como seus dados fragmentados estão distribuídos no $shardedDataDistribution cluster.
Se você estiver executando o MongoDB 5.0, poderá atualizar seu cluster para o MongoDB 6.0 e analisar a distribuição de dados fragmentados. Para detalhes adicionais, consulte Analisar a distribuição de dados fragmentados.
Alterações na política de balanceamento
A partir do MongoDB 6.0.3, os dados em clusters fragmentados são distribuídos com base no tamanho dos dados em vez do número de chunks. Como resultado, você deve estar ciente das seguintes alterações significativas no comportamento de distribuição de dados de cluster fragmentado:
O balanceador distribui intervalos de dados em vez de partes. A política de balanceamento busca a distribuição uniforme de dados em vez da distribuição de partes.
Os partes não estão sujeitos à divisão automática. Na verdade, eles são divididos apenas quando movidos entre fragmentos.
Uma parte agora é chamada de intervalo.
moveRangesubstituiumoveChunk.
O tamanho padrão do chunk aumentou de 64 MB para 128 MB
A partir do MongoDB 5.2, o tamanho padrão do chunk é de 128 megabytes. Nas versões anteriores do MongoDB, o tamanho padrão do chunk é de 64 megabytes.
enableSharding Não é mais necessário
A partir do MongoDB 6.0, o comando enableSharding não é mais necessário para fragmentar uma collection.
Status de Desfragmentação do Monitor
A partir do MongoDB 5.3, o comando balancerCollectionStatus retorna informações detalhadas quando executado em um namespace que está passando por desfragmentação de blocos. O resultado inclui a fase atual da desfragmentação e quantos chunks faltam processar.
Para ver um exemplo de saída, consulte Processo de desfragmentação contínuo.
Mecanismo de execução de consulta baseado em slot
A partir do MongoDB 5.1, o MongoDB usa um novo mecanismo de execução de query para queries elegíveis, chamado de mecanismo de execução de query baseado em slot. Se o mecanismo de execução de query baseado em slot for usado, novos campos serão incluídos no resultado do plano de explicação da query.
O novo mecanismo de execução de queries é usado, se possível.
Se o novo mecanismo de execução de query for usado, novos campos serão incluídos na resultado do plano de explicação da query.
O mecanismo de execução de query baseado em slots pode executar $group os $lookup estágiose
A partir da versão 6.0, o MongoDB usa o mecanismo de execução de query baseado em slot para executar os estágios qualificados $group e $lookup quando determinadas condições são atendidas.
Para obter mais informações, consulte Otimizações de pipeline do mecanismo de execução de query baseada em slot.
Stable API
As seções a seguir descrevem as adições à Stable APl introduzidas no MongoDB 6.0.
Para ver a lista completa de comandos de banco de dados disponíveis na API estável, consulte o registro de alterações da API estável.
Comandos de banco de dados
A partir do MongoDB 6.0, os seguintes comandos de banco de dados são compatíveis com a API estável:
Comando | Descrição | Versão estável da API |
|---|---|---|
Conta o número de documentos em uma collection ou visualização. (Também disponível na API estável para sistemas série 5.0 a partir do MongoDB 5.0.9.) | V1 |
Estágios e operadores de aggregation
A partir do MongoDB 6.0, os seguintes estágios de aggregation e operadores são suportados na API Estável:
Estágio ou operador | Descrição | Versão estável da API |
|---|---|---|
Retorna o elemento inferior de um grupo, de acordo com a ordem de classificação especificada. | V1 | |
Retorna uma aggregation dos elementos | V1 | |
Aumenta um objeto de data em um número específico de unidades de tempo. | V1 | |
Retorna a diferença entre duas datas. | V1 | |
Reduz um objeto de data por um número específico de unidades de tempo. | V1 | |
Trunca uma data. | V1 | |
Cria novos documentos em uma sequência de documentos onde determinados valores em um campo estão faltando. | V1 | |
| Retorna uma aggregation dos primeiros | V1 |
| Retorna um número especificado de elementos desde o início de uma matriz. | V1 |
Retorna o valor de um campo especificado de um documento. | V1 | |
| Retorna uma aggregation dos últimos | V1 |
| Retorna um número especificado de elementos do final de uma matriz. | V1 |
Última observação levada adiante. Define valores para | V1 | |
| Retorna uma aggregation do valor máximo de | V1 |
| Retorna os maiores valores de | V1 |
| Retorna uma aggregation do valor mínimo de | V1 |
| Retorna os menores valores de | V1 |
Adiciona, atualiza ou remove um campo especificado em um documento. | V1 | |
Executa operações em um intervalo especificado de documentos em uma collection, conhecido como janela, e retorna os resultados com base no operador de janela escolhido. | V1 | |
Classifica um array com base em seus elementos. | V1 | |
Retorna o principal elemento de um grupo de acordo com a ordem de classificação especificada. | V1 | |
Retorna uma aggregation dos principais elementos | V1 | |
Retorna o ordinal incrementado de um carimbo de data/hora como | V1 | |
Retorna os segundos de um carimbo de data/hora como | V1 |
Operadores de Janela
A partir do MongoDB 6.0, os seguintes operadores de janela são suportados na API Stable:
Operador de Janela | Descrição | Versão estável da API |
|---|---|---|
Retorna uma array de todos os valores únicos que resultam da aplicação de uma expressão a cada documento. | V1 | |
Retorna a média da expressão especificada. Ignora valores não numéricos. | V1 | |
Retorna o número de documentos no grupo ou janela. | V1 | |
Retorna a covariância populacional de duas expressões numéricas. | V1 | |
Retorna a covariância de amostra de duas expressões numéricas. | V1 | |
Retorna a posição do documento (conhecida como classificação) relativa a outros documentos na | V1 | |
Retorna a taxa média de alteração dentro da janela especificada. | V1 | |
Retorna a posição de um documento (conhecido como o número do documento) na partição de estágio | V1 | |
Retorna a média móvel exponencial da expressão numérica. | V1 | |
V1 | ||
Retorna a aproximação da área abaixo de uma curva. | V1 | |
V1 | ||
Última observação levada adiante. Define valores para | V1 | |
Retorna o valor máximo resultante da aplicação de uma expressão a cada documento. | V1 | |
Retorna o valor mínimo que resulta da aplicação de uma expressão a cada documento. | V1 | |
Retorna uma array de valores que resultam da aplicação de uma expressão a cada documento. | V1 | |
Retorna a posição do documento (conhecida como classificação) em relação a outros documentos na partição | V1 | |
Retorna o valor de uma expressão aplicada a um documento em uma posição especificada em relação ao documento atual na | V1 | |
Retorna o desvio padrão da população a partir de uma expressão numérica aplicada a cada documento. | V1 | |
Retorna o desvio padrão da amostra a partir de uma expressão numérica aplicada a cada documento. | V1 | |
Retorna a soma dos resultados ao aplicar uma expressão numérica a cada documento. | V1 |
Coleções de Time Series
As seções a seguir descrevem melhorias e novos recursos para collections de séries temporais.
Coleções de séries temporais fragmentadas
O MongoDB 5.1 oferece suporte para coleções de séries temporais fragmentadas.
Consulte:
Atualizações e exclusões
A partir do MongoDB 5.1, as coleções de séries temporais oferecem suporte a operações de atualização e exclusão com limitações.
Compressão de coluna de série temporal
A partir do MongoDB 5.2, as coleções de séries temporais usam compressão de coluna. A compactação de colunas adiciona várias inovações que funcionam juntas para melhorar significativamente a compactação prática, reduzir o armazenamento geral de seus dados em disco e melhorar o desempenho de leitura.
A partir do MongoDB 6.0, os arrays também são compactados como parte da compactação de colunas de série temporal.
Suporte para $geoNear
A partir do MongoDB 5.3, você pode usar o operador de pipeline $geoNear em qualquer campo em uma coleção de séries temporais.
Tipos de índice secundários adicionais
Você pode adicionar outros tipos de índice secundário às coleções de séries temporais, incluindo índices 2dsphere e 2d.
Para obter todos os índices adicionais e outros aprimoramentos, consulte time-series índice secundário no MongoDB 6.0.
Classificar índices secundários de uso de operações
Classificar operações em collections de séries temporais pode usar índices para melhorar o desempenho. Para obter mais informações e um exemplo, consulte Usar índices secundários para melhorar o desempenho de classificação.
Melhorias gerais
Eliminar um índice de chave de fragmento com hash
A partir do MongoDB 6.0.12 (e 5.0.22), você pode eliminar o índice para uma chave de fragmento com hash.
Isso pode acelerar a inserção de dados para collections fragmentadas com uma hashed shard key.
Para mais informações, consulte Descartar um índice de hashed shard key.
Suporte a FIPS OpenSSL3
A partir do MongoDB 6.0.7, O modo FIPS é compatível com OpenSSL3 para os seguintes sistemas operacionais:
Ubuntu 22.04
RHEL 9
Amazon Linux 2023
Melhorias nas capped collections
A partir do MongoDB 6.0, você pode alterar o tamanho máximo de uma capped collection, em bytes ou em número de documentos, usando o comando collMod. Consulte Redimensionar uma capped collection para obter mais detalhes.
numOrphanDocs Campo adicionado ao comando collStats
A partir do MongoDB 6.0, a saída collStats inclui o campo collStats.numOrphanDocs que mostra o número de documentos órfãos na collection.
Excluir campos incorporados no serverStatus resultado do
A partir do MongoDB 6.0 (e 5.0.9), Você pode excluir campos incorporados da saída serverStatus.
Conexões
A partir do MongoDB 6.0, o objeto de conexão Mongo() tem os seguintes novos métodos:
Mongo.getWriteConcern()retorna a write concernMongo.setWriteConcern()define a write concern
Suporte para geração de rastreamento de diagnóstico em arm64
A partir do MongoDB 6.0 (e 5.0.10), a geração de backtrace de diagnóstico em arm64 é permitda.
Configurar intervalo de atualização para informações do usuário LDAP em cache
A partir do MongoDB 5.2, você pode usar os seguintes novos parâmetros de servidor para configurar o intervalo de atualização para informações do usuário LDAP armazenadas em cache:
A partir do MongoDB 5.2, a frequência de atualização do cache com informações do usuário obtidas de um servidor LDAP é determinada pelo parâmetro ldapShouldRefreshUserCacheEntries:
Se verdadeiro, utilize
ldapUserCacheRefreshInterval.Se falso, utilize
ldapUserCacheInvalidationInterval.
Alterações que afetam a compatibilidade
Algumas alterações podem afetar a compatibilidade e podem exigir ações do usuário. Para obter uma lista detalhada das mudanças de compatibilidade, consulte Alterações de compatibilidade no MongoDB 6.0.
Procedimentos de atualização
Importante
Versão de compatibilidade de recursos
Para atualizar para o MongoDB 6.0 a partir de uma versão 5.0, a versão 5.0 deve ter featureCompatibilityVersion definida como 5.0. Para verificar
a versão:
db.adminCommand( { getParameter: 1, featureCompatibilityVersion: 1 } )
Para atualizar para o MongoDB 6.0, consulte as instruções de atualização específicas para o MongoDB deployment:
Caso você precise de orientação ao atualizar para a versão 6.0, os serviços profissionais do MongoDB oferecem suporte à atualização de versões principais, o que ajuda a garantir uma transição tranquila e sem interrupções para seu aplicativo do MongoDB. Para saber mais, consulte a página Consultoria do MongoDB.
Consideração de rebaixamento
O MongoDB suporta apenas downgrades de versão única. Você não pode fazer o downgrade para uma versão que esteja várias versões atrás da versão atual.
Por exemplo, você pode desatualizar um sistema série 6.0 para série 5.0. No entanto, desatualizar ainda mais o sistema série 5.0 para um sistema série 4.4 não é possível.
Download
Para baixar o MongoDB 6.0, acesse a Central de downloads do MongoDB.
Problemas conhecidos
Esta seção descreve os problemas conhecidos no MongoDB 6.0 e seu status de resolução.
Na versão | Emitir | Status |
|---|---|---|
6.0.0 | SERVIDOR-68062: Agregações de vários estágios que usam $geoNear podem violar restrições. | Resolvido na versão 6.0.1. |
Relatar um problema
Para relatar um problema, consulte o repositório MongoDB no GitHub para obter instruções sobre como arquivar um ticket do JIRA para o servidor MongoDB ou um dos projetos relacionados.