setUserWriteBlockMode
Definição
setUserWriteBlockMode
Novidades na versão 6.0.
O comando
setUserWriteBlockMode
bloqueia e desbloqueia gravações em todo o cluster.Durante Cluster-to-Cluster Sync, o
mongosync
, a ferramenta de sincronização de cluster para cluster, usa o comandosetUserWriteBlockMode
para bloquear gravações no cluster de destino. Para obter mais informações, consulte o comandoiniciar da API HTTP.Observação
Usuários e aplicativos com o privilégio
bypassWriteBlockingMode
podem ignorar o bloqueio e continuar realizando gravações.
Compatibilidade
Esse comando está disponível em implantações hospedadas nos seguintes ambientes:
MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB
MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB
Importante
Este comando não é suportado em clusters MongoDB Atlas . Para obter informações sobre o suporte do Atlas para todos os comandos, consulte Comandos não suportados.
Sintaxe
O comando tem a seguinte sintaxe:
db.adminCommand( { setUserWriteBlockMode: 1, global: <boolean> } )
Campos de comando
O comando utiliza os seguintes campos:
Campo | Tipo | Descrição |
---|---|---|
| inteiro | Defina este campo como |
| booleano | Bloqueia gravações em um cluster quando definido como |
Acesso necessário
Para executar o comando setUserWriteBlockMode
, o usuário deve ter o privilégio do setUserWriteBlockMode
.
Exemplo
Habilitar o modo de bloqueio de escrita do usuário:
db.adminCommand( { setUserWriteBlockMode: 1, global: true } ) Adicionar um registro à collection:
db.names.insertOne( { name: "George Washington Cable" } ) O servidor bloqueia a gravação porque o bloqueio de escrita do usuário está habilitado.
Exemplo de saída:
MongoServerError: User writes blocked Desativar o modo de bloqueio de escrita do usuário:
db.adminCommand( { setUserWriteBlockMode: 1, global: false } ) Adicionar um registro à collection:
db.names.insertOne( { name: "George Washington Cable" } ) O método
insertOne()
escreve em uma collection. O servidor permite a gravação porque o bloco de gravação do usuário está desabilitado.