Definición
setUserWriteBlockModeNovedades en la versión 6.0.
El comando
setUserWriteBlockModebloquea y desbloquea la escritura en todo el clúster.Durante la sincronización de clúster a clúster,
mongosync, la herramienta de sincronización de clúster a clúster, utiliza el comandosetUserWriteBlockModepara bloquear la guardar en el clúster de destino. Para obtener más información, consulta el comando HTTP API start.Nota
Usuarios y aplicaciones con el
bypassWriteBlockingModeel privilegio puede eludir el bloqueo y continuar realizando guardados.
Compatibilidad
Este comando está disponible en implementaciones alojadas en los siguientes entornos:
MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
Importante
Este comando no es compatible con los clústeres M0 y Flex. Para obtener más información, consulta Comandos no compatibles.
MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB
MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.
Sintaxis
El comando tiene la siguiente sintaxis:
db.adminCommand( { setUserWriteBlockMode: 1, global: <boolean> } )
Campos de comandos
El comando toma los siguientes campos:
Campo | Tipo | Descripción |
|---|---|---|
| entero | Establece este campo a |
| booleano | Bloquea los guardados en un clúster cuando se establece en |
Acceso requerido
Para ejecutar el comando setUserWriteBlockMode, el usuario debe tener el setUserWriteBlockMode privilegio.
Ejemplo
Habilitar el modo de bloqueo de guardado para el usuario:
db.adminCommand( { setUserWriteBlockMode: 1, global: true } ) Añada un registro a la colección:
db.names.insertOne( { name: "George Washington Cable" } ) El servidor bloquea la escritura porque está activado el bloqueo de escritura del usuario.
Ejemplo de salida:
MongoServerError: User writes blocked Deshabilitar el modo de bloqueo de guardar del usuario:
db.adminCommand( { setUserWriteBlockMode: 1, global: false } ) Añada un registro a la colección:
db.names.insertOne( { name: "George Washington Cable" } ) El método
insertOne()escribe en una colección. El servidor permite la escritura porque el bloqueo de escritura del usuario está desactivado.