Downgrade 5.0 autônomo para 4.4
Nesta página
Antes de tentar qualquer downgrade, familiarize-se com o conteúdo deste documento.
Caminho de downgrade
Se você precisar fazer o downgrade do 5.0, faça o downgrade para a versão de correção mais recente do 4.4.
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 uma série 5.0 para uma série 4.4. No entanto, não há suporte para desatualização adicional dessa implantação série 4.4 para uma implantação série 4.2.
Criar cópia de segurança
Opcional, mas recomendado. Crie uma cópia de segurança do seu banco de dados.
Controle de acesso
Se seu sistema tiver o controle de acesso ativado, os privilégios de usuário de downgrade deverão incluir privilégios para listar e gerenciar índices nos bancos de dados. Um usuário com papel do root
tem os privilégios exigidos.
Pré-requisitos
Para reduzir de 5.0 para 4.4, você deve remover feições incompatíveis que são persistentes e/ou atualizar configurações incompatíveis. Esses incluem:
1. Preocupações de leitura e gravação padrão do cluster
O MongoDB 5.0 alterou o valor padrão para read concern e write concern em todo o cluster, e o downgrade para o MongoDB 4.4 pode alterar esses padrões novamente. Considere configurar manualmente o read concern e write concern do seu cluster antes de fazer o downgrade:
Para configurar manualmente um valor padrão para um write concern ou write concern do cluster, utilize o comando
setDefaultRWConcern
.Se seu cluster inclui um árbitro e você já havia desativado a preocupação
"Majority"
read para evitar a pressão do cache em determinadas situações, convém configurar--enableMajorityReadConcern false
oureplication.enableMajorityReadConcern: false
depois de fazer o downgrade.
2. Campos do documento com .
ou $
caracteres
O MongoDB 5.0 adiciona suporte para incluir os caracteres .
ou $
nos nomes de campo do documento. Você deve excluir todos os documentos que contenham nomes de campos que incluam os caracteres .
ou $
antes de fazer o downgrade para o MongoDB 4.4.
3. Arquivos de dados de fuso horário em formato fino
O MongoDB 5.0 permite suporte para arquivos de dados de fuso horário em formato compacto. Se estiver usando arquivos de dados de fuso horário de formato fino em seu sistema, conforme fornecido ao MongoDB com a opção de linha de comando --timeZoneInfo
ou a configuração de arquivo de configuração processManagement.timeZoneInfo
, será necessário fazer downgrade para o MongoDB 4.4.7 ou posterior, ou então reverter seus arquivos de dados de fuso horário para usar os arquivos de dados anteriores sem formato fino.
4. Versão de compatibilidade de recursos (fCV) de downgrade
Para fazer downgrade do featureCompatibilityVersion
do seu autônomo:
Conecte uma shell do
mongo
à instância domongod
.Faça o downgrade de
featureCompatibilityVersion
para"4.4"
.db.adminCommand({setFeatureCompatibilityVersion: "4.4"}) O comando
setFeatureCompatibilityVersion
executa grava em uma coleção de sistema interno e é idempotente. Se, por qualquer motivo, o comando não for concluído com êxito, tente novamente o comando na instânciamongod
.
5. Remover os recursos persistentes do FCV 5.0
As etapas a seguir serão necessárias somente se fCV tiver sido definido como "5.0"
.
Remova todas as feições do 5.0 persistentes que são incompatíveis com 4.4. Esses incluem:
- Coleção de Séries Temporais
- Remova todas as coleções de séries temporais.
- Gerenciamento de filtros de auditoria em tempo de execução
Desative o Gerenciamento de Filtros de Auditoria do Runtime definindo
auditLog.runtimeConfiguration
comofalse
no arquivo de configuração do nó.Atualize os filtros de auditoria para esta instância no arquivo de configuração local.
6. Remover Recursos 5.0
Remova todas as feições persistentes que utilizam feições do 5.0. Isso inclui, mas não está limitado a:
Se alguma definição de visualização incluir operadores 5.0, como
$dateAdd
ou$sampleRate
, ela deverá ser removida. Consulte Novos Operadores de Agregação para a lista completa.
Procedimento
Aviso
Antes de prosseguir com o procedimento de downgrade, certifique-se de que os pré-requisitos foram concluídos.
Baixe os binários 4.4 mais recentes.
Utilizando um gerenciador de pacotes ou um download manual, obtenha a versão mais recente na série 4.4. Se estiver usando um gerenciador de pacotes, adicione um novo repositório para os binários 4.4 e execute o processo de downgrade real.
Importante
Antes de atualizar ou fazer downgrade de um conjunto de réplicas, certifique-se de que todos os membros do conjunto de réplicas estejam em execução. Se você não fizer isso, a atualização ou downgrade não será concluído até que todos os membros sejam iniciados.
Se você precisar fazer o downgrade do 5.0, faça o downgrade para a versão de correção mais recente do 4.4.
Desligue a mongod
instância .
Para encerrar o processo mongod
forma limpa, conecte mongosh
à instância e execute:
db.adminCommand( { shutdown: 1 } )
Um desligamento limpo de um mongod
conclui todas as operações pendentes, transfere todos os dados para arquivos de dados e fecha todos os arquivos de dados.
Atualize os arquivos de configuração.
Desative quaisquer feições configuráveis do 5.0 atualizando o arquivo de configuração da instância do mongod
antes de reiniciar.
Reinicie com a 4.4 mongod
instância mais recente.
Substitua o binário 5.0 pelo binário 4.4 mongod
baixado e reinicie.