Antes de intentar realizar cualquier cambio a una versión inferior, familiarícese con el contenido de este documento.
Ruta de degradación
Si necesita degradar desde 5.0, degrade a la última versión parcheada de 4.4.
MongoDB solamente soporta degradaciones de una única versión. No se puede retroceder a una versión que esté varias versiones por detrás de la versión actual.
Por ejemplo, puede degradar una implementación de la serie 5.0a una de la serie 4.4. Sin embargo, no se admite degradar esa implementación de la serie 4.4a una de la serie 4.2.
Crear copia de seguridad
Opcional pero recomendado. Crea una copia de seguridad de tu base de datos.
Control de acceso
Si su implementación tiene habilitado el control de acceso, sus privilegios de usuario de degradación deben incluir privilegios para enumerar y administrar índices en las bases de datos. Un usuario con root El rol tiene los privilegios requeridos.
Requisitos previos
Para degradar de 5.0 a 4.4, debe eliminar las funciones incompatibles que persisten o actualizar las opciones de configuración incompatibles. Estas incluyen:
1. Problemas de lectura y escritura predeterminados del clúster
MongoDB 5.0 cambió el valor predeterminado para las preocupaciones de lectura y escritura a nivel de clúster, y al revertir a MongoDB 4.4, podría restablecer esos valores predeterminados. Considere configurar manualmente la preocupación de lectura y escritura predeterminada de su clúster antes de revertir a la versión anterior:
Para configurar manualmente un valor predeterminado para la preocupación de lectura o escritura de un clúster, utilice el
setDefaultRWConcerncomando.Si su clúster incluye un árbitro y anteriormente había deshabilitado la
"Majority"preocupación de lectura para evitar la presión de caché en ciertas situaciones, es posible que desee configurar--enableMajorityReadConcern falseoreplication.enableMajorityReadConcern: falseuna vez que baje de versión.
2. Campos de documento con . o $ caracteres
MongoDB 5.0 ahora admite la inclusión de los caracteres . o $ en los nombres de campo de los documentos. Debe eliminar cualquier documento que contenga nombres de campo que incluyan los caracteres . o $ antes de actualizar a MongoDB 4.4.
3. Archivos de datos de zona horaria de formato reducido
MongoDB 5.0 habilita la compatibilidad con archivos de datos de zona horaria en formato slim. Si utiliza archivos de datos de zona horaria en formato slim en su implementación, como se proporciona a MongoDB con la --timeZoneInfo opción de línea de comandos o processManagement.timeZoneInfo la configuración del archivo de configuración, debe actualizar a MongoDB.4.4 7 o posterior, o bien revertir sus archivos de datos de zona horaria para que utilicen los archivos de datos anteriores sin formato slim.
4. Versión de compatibilidad de funciones de degradación (FCV)
Para degradar el featureCompatibilityVersion de su versión independiente:
Conecte un
mongoshell a lamongodinstancia.Bajar de
featureCompatibilityVersiona"4.4".db.adminCommand({setFeatureCompatibilityVersion: "4.4"}) El
setFeatureCompatibilityVersioncomando realiza escrituras en una colección interna del sistema y es idempotente. Si por alguna razón el comando no se completa correctamente, vuelva a intentarlo en lamongodinstancia.
5. Eliminar funciones persistentes de FCV 5.0
Los siguientes pasos son necesarios solo si FCV alguna vez se configuró en "5.0".
Elimine todas las 5.0 funciones persistentes que sean incompatibles 4.4 con. Estas incluyen:
- Colección de series de tiempo
- Eliminar todas las colecciones de series temporales.
- Gestión de filtros de auditoría en tiempo de ejecución
Deshabilite la administración del filtro de auditoría en tiempo de ejecución configurando
auditLog.runtimeConfigurationenfalseen el archivo de configuración del nodo.Actualice los filtros de auditoría para esta instancia en el archivo de configuración local.
6. Eliminar 5.0 funciones
Eliminar todas las funciones persistentes que utilizan 5.0 funciones. Estas incluyen, entre otras:
Si alguna definición de vista incluye 5.0 operadores, como o, debe eliminarse.Consulte "Nuevos
$dateAddoperadores$sampleRatede agregación" para ver la lista completa.
Procedimiento
Advertencia
Antes de continuar con el procedimiento de degradación, asegúrese de que se hayan completado los requisitos previos.
Descargue los últimos binarios 4.4.
Usando un gestor de paquetes o una descarga manual, obtenga la última versión de la serie 4.4. Si usa un gestor de paquetes, agregue un nuevo repositorio para los binarios 4.4 y luego realice el proceso de degradación.
Importante
Antes de actualizar o degradar un Set de réplicas, asegúrate de que todos los miembros del Set de réplicas estén en funcionamiento. De lo contrario, la actualización o degradación no se completará hasta que se inicien todos los miembros.
Si necesita degradar desde 5.0, degrade a la última versión parcheada de 4.4.
Apague la mongod instancia.
Para cerrar limpiamente el mongod proceso, conecte a la instancia y mongosh ejecute:
db.adminCommand( { shutdown: 1 } )
Un apagado limpio de un mongod completa todas las operaciones pendientes, guarda todos los datos en archivos de datos y cierra todos los archivos de datos.
Actualizar archivos de configuración.
Deshabilite cualquier 5.0 función configurable actualizando el mongod archivo de configuración de la instancia antes de reiniciar.
Reinicie con la última 4.4 mongod instancia.
Reemplace el 5.0 binario con el 4.4 mongod binario descargado y reinicie.