Docs Menu
Docs Home
/ /

Configurar el registro en diario para implementaciones autogestionadas

MongoDB utiliza el registro de escritura anticipada en un disco diario para garantizar la durabilidad de la operación de escritura.

El motor de almacenamiento WiredTiger no requiere registro en diario para garantizar un estado consistente tras un fallo. La base de datos se restaurará al último punto de control consistente durante la recuperación. Sin embargo, si MongoDB se cierra inesperadamente entre puntos de control, se requiere registro en diario para recuperar las escrituras realizadas después del último punto de control.

Si mongodSi se detiene inesperadamente, el programa puede recuperar todo lo escrito en el diario. MongoDB reaplicará las operaciones de escritura al reiniciarse y mantendrá un estado consistente. Por defecto, la mayor cantidad de escrituras perdidas (es decir, las que no se realizan en el diario) son las realizadas en los últimos 100 milisegundos, más el tiempo que tarda en realizarse la escritura.commitIntervalMs Consulte para obtener más información sobre la configuración predeterminada.

Puede obtener una confirmación de confirmación con la opción "Escribir preocupación" y la j opción. Para más detalles,consulte "Escribir preocupación".

El serverStatus comando /método devuelve, que contiene estadísticas sobre eldb.serverStatus() wiredTiger.logdiario.

Al reiniciarse tras un fallo, MongoDB reproduce todos los archivos de diario en el directorio de diario antes de que el servidor esté disponible. Si MongoDB debe reproducir archivos de diario, mongod registra estos eventos en la salida del registro.

No hay razón para ejecutar --repair.

Con el motor de almacenamiento WiredTiger, MongoDB utiliza, por defecto, el snappy compresor para el diario. Para especificar un algoritmo de compresión diferente o ninguna compresión para una mongod instancia:

Tip

Si durante este procedimiento se produce un apagado incorrecto de mongod un, debe usar la configuración anterior del compresor para recuperarse usando los archivos de registro. Una vez recuperado, puede reintentar el procedimiento.

Utilice el siguiente procedimiento para cambiar el compresor de diario para una instancia mongod independiente:

  1. Actualice al nuevo storage.wiredTiger.engineConfig.journalCompressor valor.

    Si utiliza opciones de línea de comandos en lugar de un archivo de configuración, debe actualizar la --wiredTigerJournalCompressor opción de línea de comandos durante el reinicio a continuación.

  2. Realice un apagado limpio de la instancia. Por ejemplo,mongod conecte mongosh a la instancia y db.shutdownServer() cuestión:

    db.getSiblingDB('admin').shutdownServer()
  3. Una vez que haya confirmado que el proceso ya no se está ejecutando, reinicie la mongod instancia:

    • Si estás usando un archivo de configuración:

      mongod -f <path/to/myconfig.conf>
    • Si está utilizando opciones de línea de comandos en lugar de un archivo de configuración, actualice con el nuevo --wiredTigerJournalCompressor valor.

      mongod --wiredTigerJournalCompressor <differentCompressor|none> ...

Utilice el siguiente procedimiento para cambiar el compresor de diario de un miembro de un conjunto de réplicas:

  1. Realice un apagado limpio de la instanciamongod. Por ejemplo, conectemongosha la instancia y ejecutedb.shutdownServer():

    db.getSiblingDB('admin').shutdownServer()
  2. Actualice al nuevo storage.wiredTiger.engineConfig.journalCompressor valor.

    Si utiliza opciones de línea de comandos en lugar de un archivo de configuración, debe actualizar las opciones de línea de comandos durante el reinicio a continuación.

  3. Reinicie la mongod instancia:

    • Si estás usando un archivo de configuración:

      mongod -f <path/to/myconfig.conf>
    • Si está utilizando opciones de línea de comandos en lugar de un archivo de configuración, actualice con el nuevo --wiredTigerJournalCompressor valor.

      mongod --wiredTigerJournalCompressor <differentCompressor|none> ...

Utilice el siguiente procedimiento para cambiar el compresor de diario de un miembro de un conjunto de réplicas de fragmentos o de un conjunto de réplicas de servidor de configuración:

  1. Realice un apagado limpio de la instanciamongod. Por ejemplo, conectemongosha la instancia y ejecutedb.shutdownServer():

    db.getSiblingDB('admin').shutdownServer()
  2. Actualice al nuevo storage.wiredTiger.engineConfig.journalCompressor valor.

    Si utiliza opciones de línea de comandos en lugar de un archivo de configuración, debe actualizar las opciones de línea de comandos durante el reinicio a continuación.

  3. Reinicie la mongod instancia:

    • Si estás usando un archivo de configuración:

      mongod -f <path/to/myconfig.conf>
    • Si está utilizando opciones de línea de comandos en lugar de un archivo de configuración, actualice con el nuevo --wiredTigerJournalCompressor valor.

      mongod --shardsvr --wiredTigerJournalCompressor <differentCompressor|none> --replSet ...

Volver

Registro en la bitácora

En esta página