Definição
fsyncUnlockReduz a contagem de bloqueios no servidor ou cluster. To enable write operations, the lock count must be zero.
A partir de MongoDB 7.1 (também disponível a partir de 7.0.2, 6.0.11 e 5.0.22) os comandos
fsyncefsyncUnlockpodem ser executados emmongospara bloquear e desbloquear um cluster fragmentado.Use este comando para desbloquear gravações depois de concluir uma operação de backup.
Importante
Os servidores mantêm uma contagem de bloqueio do fsync . O comando com
fsyncolockcampo definido comotrueaumenta a contagem de bloqueio , enquanto o comando a diminui. Para habilitar gravações em um servidor ou cluster bloqueado, chamefsyncUnlockofsyncUnlockcomando até que a contagem de bloqueio chegue a zero.fsyncUnlocké uma operação administrativa. Normalmente, você usará após umafsyncUnlockoperaçãode backup do banco de dados .Dica
mongoshEm, esse comando também pode ser executado por meio do métododb.fsyncUnlock()assistente.Os métodos auxiliares são convenientes para os
mongoshusuários, mas podem não retornar o mesmo nível de informações que os comandos do banco de dados . Nos casos em que a conveniência não for necessária ou os campos de retorno adicionais forem necessários, use o comando de banco de dados.
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
Sintaxe
O comando tem a seguinte sintaxe:
db.adminCommand( { fsyncUnlock: 1, comment: <any> } )
O campo comment é opcional e pode conter um comentário de qualquer tipo de dados.
Resultados
A operação retorna um documento com os seguintes campos:
Campo | Descrição |
|---|---|
| Informações sobre o status da operação |
| O número de bloqueio restantes na instância após a operação. |
| O código de status. |
Exemplos
Considere uma situação em quedb.fsyncLock()foi emitido duas vezes. A seguinte operação dofsyncUnlockreduz as travas feitas pelodb.fsyncLock()pelo 1:
db.adminCommand( { fsyncUnlock: 1 } )
A operação retorna o seguinte documento:
{ "info" : "fsyncUnlock completed", "lockCount" : Long(1), "ok" : 1 }
As the lockCount is greater than 0, the mongod instance is locked against writes. Para desbloquear a instância para gravações, execute a operação de desbloqueio novamente:
db.adminCommand( { fsyncUnlock: 1 } )
A operação retorna o seguinte documento:
{ "info" : "fsyncUnlock completed", "lockCount" : Long(0), "ok" : 1 }
A instância mongod está desbloqueada para gravações.