Nota
Debe actualizar a WiredTiger. MongoDB eliminó el motor de almacenamiento obsoleto MMAPv1 en la versión 4.2.
Utilice este tutorial para cambiar el motor de almacenamiento de un Instancia independiente de MongoDB para WiredTiger.
Considerations
mongodump y mongorestore
Este tutorial utiliza las utilidades mongodump y mongorestore para exportar e importar datos.
Enlace predeterminado a localhost
Los binarios de MongoDB, mongod y, se mongos enlazan a localhost de forma predeterminada.
El tutorial se ejecuta enmongodumpymongorestoredesde el mismo host que elmongodal que se conectan. Si se ejecuta de forma remota, mongodumpymongorestoredeben especificar la dirección IP o el nombre de host asociado para conectarse almongod.
XFS y WiredTiger
Con el motor de almacenamiento WiredTiger, se recomienda usar XFS para nodos que contienen datos en Linux. Para más información, consulte Kernel y sistemas de archivos.
Restricciones únicamente de MMAPv1
Una vez actualizado a WiredTiger, su implementación de WiredTiger no estará sujeta a las siguientes1restricciones exclusivas de MMAPv:
Restricciones de MMAPv1 | Breve descripción |
|---|---|
Número de espacios de nombres | Para MMAPv1, la cantidad de espacios de nombres está limitada al tamaño del archivo de espacio de nombres dividido por 628. |
Tamaño del archivo de espacio de nombres | Para MMAPv1, los archivos de espacio de nombres no pueden tener más de 2047 megabytes. |
Tamaño de la base de datos | El motor de almacenamiento MMAPv1 limita cada base de datos a no más de 16000 archivos de datos. |
Tamaño de los datos | Para MMAPv,1 una sola instancia no puede administrar un conjunto de datos que exceda el espacio máximo de direcciones de memoria virtual proporcionado por el sistema operativo |
Número de colecciones en una base de datos | Para el motor de almacenamiento MMAPv1, la cantidad máxima de colecciones en una base de datos es una función del tamaño del archivo de espacio de nombres y la cantidad de índices de colecciones en la base de datos. |
Procedimiento
Inicie mongod el que desea cambiar a WiredTiger.
Si mongod ya está en ejecución, puede omitir este paso.
Exportar datos mongodump utilizando.
mongodump --out=<exportDataDestination>
Especifica opciones adicionales según corresponda, como nombre de usuario y contraseña si se ejecuta con autorización habilitada. Consulta mongodump para conocer las opciones disponibles.
Cree un directorio de datos para el nuevo mongod que se ejecuta con WiredTiger.
Cree un directorio de datos para la nueva instancia que se ejecutará con el motor de almacenamiento mongod WiredTiger. mongod debe tener permisos de lectura y escritura para este directorio.
mongod con WiredTiger no se iniciará con archivos de datos creados con un motor de almacenamiento diferente.
Actualizar la configuración de WiredTiger.
Elimine cualquier1 opción de configuración de MMAPv de la configuración mongod de la instancia.
Inicia mongod con WiredTiger.
mongodInicie, especificando wiredTiger como y el directorio de datos recién creado para --storageEngine WiredTiger --dbpath como.
Especifique opciones adicionales según corresponda,--bind_ip como.
Advertencia
Antes de vincular una dirección IP que no sea local (por ejemplo, de acceso público), asegúrese de proteger su clúster contra accesos no autorizados. Para obtener una lista completa de recomendaciones de seguridad, consulte la Lista de verificación de seguridad para implementaciones autogestionadas. Como mínimo, considere habilitar la autenticación y reforzar la infraestructura de red.
mongod --storageEngine wiredTiger --dbpath <newWiredTigerDBPath> --bind_ip localhost,<hostname(s)|ip address(es)>
También puede especificar las opciones en un archivo de configuración. Para especificar el motor de almacenamiento, utilice la storage.engine configuración.
Sube los datos exportados mongorestore usando.
mongorestore <exportDataDestination>
Especifique opciones adicionales según corresponda. Consulte para ver las opciones mongorestore disponibles.