参考 > 参考 > mongo Shell方法 > 数据库方法 > db.fsyncUnlock()
在本页面
db.fsyncUnlock()¶db.fsyncLock()将mongod实例上
的锁定减少1。
重要
在db.fsyncLock()和db.fsyncUnlock()
运营维护锁计数。db.fsyncLock()
增加锁计数,并db.fsyncUnlock()
减少锁计数。
要解锁mongod实例以进行写入,锁定计数必须为零。也就是说,对于给定数量的
db.fsyncLock()操作,您必须发出相应数量的db.fsyncUnlock()操作才能解锁实例以进行写入。
db.fsyncUnlock()是一项行政操作。通常,您将使用db.fsyncUnlock()以下数据库
备份操作。
db.fsyncUnlock() 具有以下语法:
该操作将返回包含以下字段的文档:
info |
有关操作状态的信息。 |
lockCount(3.4版中的新功能) |
操作后实例上剩余的锁数。 |
ok |
状态码。 |
该db.fsyncUnlock()方法包装
fsyncUnlock命令。
db.fsyncLock()确保数据文件是安全的使用低级别的备份实用程序,如复制cp,scp或
tar。一mongod开始使用复制的文件包含从上锁定用户写入的数据无法区分用户写入的数据mongod。
锁定的数据文件mongod可能由于诸如日记同步或
WiredTiger快照之类的操作而改变。尽管这对逻辑数据(例如,客户端访问的数据)没有影响,但是某些备份实用程序可能会检测到这些更改并发出警告或失败并出现错误。有关MongoDB推荐的备份实用程序和过程的更多信息,请参阅
MongoDB备份方法。
考虑db.fsyncLock()已经发出两次的情况。以下db.fsyncUnlock()操作将锁减少了db.fsyncLock()1:
该操作返回以下文档:
当lockCount大于0时,mongod实例将被禁止写操作。要解锁实例以进行写入,请db.fsyncLock()再次运行
:
该操作返回以下文档:
该mongod的实例解锁写入。