Atualize um autônomo para 8.0
Nesta página
Familiarize-se com o conteúdo deste documento, incluindo a revisão minuciosa dos pré-requisitos, antes de atualizar com o MongoDB 8.0.
As etapas a seguir descrevem o procedimento para atualizar um mongod
autônomo da versão 7.0 para o 8.0.
Se você precisar de orientação sobre como atualizar para a versão 8.0, os serviços profissionais do MongoDB oferecem suporte de atualização da versão principal para ajudar a garantir uma transição tranquila, sem interrupção para seu aplicativo MongoDB.
Recomendações de upgrade e listas de verificação
Ao atualizar, considere o seguinte:
Atualizar caminho da versão
Para atualizar uma implantação MongoDB existente para 8.0, você deve estar executando uma versão da série 7.0.
Para atualizar de uma versão anterior à série 7.0, é preciso atualizar sucessivamente as principais versões até fazer o upgrade para a série 7.0. Por exemplo, se estiver executando a série 6.0, você deve atualizar para a 7.0 antes de fazer o upgrade para 8.0.
Verifique a compatibilidade do driver
Antes de fazer upgrade do MongoDB, verifique se você está usando um driver compatível com o MongoDB 8.0. Consulte a documentação do driver para seu driver específico para verificar a compatibilidade com o MongoDB 8.0.
As implementações atualizadas que são executadas em drivers incompatíveis podem encontrar comportamentos inesperados ou indefinidos.
Preparação
Antes de iniciar sua atualização, consulte o documento Alterações de compatibilidade no MongoDB 8.0 para garantir que seus aplicativos e sistemas sejam compatíveis com o MongoDB 8.0. Resolva as incompatibilidades em sua implantação antes de iniciar a atualização.
Antes de atualizar o MongoDB, sempre teste seu aplicativo em um ambiente de preparação antes de implantar a atualização em seu ambiente de produção.
Consideração de rebaixamento
Você não pode fazer downgrade da versão binária do seu sistema sem assistência do suporte.
Para saber mais, consulte Downgrade 8.0 para 7.0.
Pré-requisitos
Versão de compatibilidade de recursos
A instância do 7.0 deve ter featureCompatibilityVersion
configurado para "7.0"
. Para verificar featureCompatibilityVersion
:
db.adminCommand( { getParameter: 1, featureCompatibilityVersion: 1 } )
A operação deve retornar um resultado que inclua "featureCompatibilityVersion" : { "version" : "7.0" }
.
Para configurar ou atualizar o featureCompatibilityVersion
, execute o seguinte comando:
db.adminCommand( { setFeatureCompatibilityVersion: "7.0" } )
Para mais informações, consulte setFeatureCompatibilityVersion
.
Considere converter para conjunto de réplicas
Antes de atualizar, considere converter sua implantação independente em um conjunto de réplicas. Os conjuntos de réplicas são a configuração de implantação recomendada para MongoDB.
Remover coleções system.buckets inválidas
Ao atualizar para o MongoDB 8.0, se você tiver alguma coleção system.buckets
que não seja coleção de séries temporais, talvez seja necessário drop
ou rename
essas coleções antes de atualizar, dependendo do seu 8.0 versão do patch:
- MongoDB 8.0.5 e posterior
- Você não precisa descartar collections
system.buckets
que não sejam collections de séries temporais antes de fazer o upgrade. No entanto, você deve descartá-los ou renomeá-los depois de concluir a atualização. - MongoDB 8.0.4 e anteriores
- Você deve eliminar ou renomear as coleções
system.buckets
que não são coleções de séries temporais antes de atualizar. Todas as coleções dosystem.buckets
devem ter opções de séries temporais válidas configuradas antes de atualizar para as versões 8.0.0 - 8.0.4.
Para determinar se você tem coleções system.buckets
que não são coleções de séries temporais, utilize o método db.getCollectionInfos()
com um filtro:
db.getCollectionInfos( { $and: [ { name: { $regex: /^system\.buckets/ } }, { 'options.timeseries': { $exists: false } } ] } )
Download 8.0 Binários
Através do Gerenciador de Pacotes
Se você instalou o MongoDB a partir dos repositórios MongoDB apt
, yum
, dnf
ou zypper
, deverá atualizar para a versão 8.0 utilizando seu gerenciador de pacotes.
Siga as instruções de instalação do 8.0 apropriado para seu sistema Linux. Isso envolverá a adição de um repositório para a nova versão e, em seguida, a execução do processo de atualização real.
Manualmente
Se você não tiver instalado o MongoDB usando um gerenciador de pacotes, poderá fazer o download manual dos binários do MongoDB no MongoDB Download Center.
Consulte as instruções de instalação da versão 8.0 para obter mais informações.
Procedimento de atualização
Habilite recursos 8.0 incompatíveis com versões anteriores.
Neste ponto, você pode executar o 8.0 binários sem os recursos recursos do 8.0 que são incompatíveis com 7.0.
Para habilitar esses recursos da versão 8.0, defina a versão de compatibilidade do recurso (FCV
) como 8.0.
Dica
Habilitar essas recursos funcionalidades com versões anteriores pode complicar o processo de downgrade, pois você deve remover todos as funcionalidades persistentes incompatíveis com versões anteriores antes de fazer o downgrade.
É recomendável que, após a atualização, você permita que seu sistema seja executado sem habilitar essas funcionalidades por um período de burn-in para garantir que a probabilidade de downgrade seja mínima. Quando você estiver confiante de que a probabilidade de downgrade é mínima, habilite essas funcionalidades.
Execute o comando setFeatureCompatibilityVersion
no banco de dados do admin
:
db.adminCommand( { setFeatureCompatibilityVersion: "8.0", confirm: true } )
Definir o valor confirm
para true
permite que a operação continue. Se você omitir o parâmetro confirm
ou definir confirm
como um valor diferente de true
, o comando falhará e retornará um aviso sobre a modificação da versão de compatibilidade do recurso. O aviso diz que, depois de fazer uma atualização ou desatualização do FCV do cluster, você não poderá desatualizar a versão binária sem a assistência do suporte.
Este comando deve executar gravações em uma collection interna do sistema. Se, por algum motivo, o comando não for concluído com êxito, você poderá tentar novamente com segurança, pois a operação é idempotente.
Procedimentos de atualização adicionais
Para atualizar um conjunto de réplicas, consulte Atualizar um conjunto de réplicas para 8.0.
Para atualizar um cluster fragmentado, consulte Atualizar um cluster fragmentado para 8.0.