setUserWriteBlockMode
定义
setUserWriteBlockMode
新版本中6.0.
setUserWriteBlockMode
命令可以阻止和解除整个集群的写入。在集群到集群同步过程中,集群到集群同步工具
mongosync
使用setUserWriteBlockMode
命令在目标集群上阻止写入。有关更多信息,请参阅 HTTP API。开始 命令。注意
具有
bypassWriteBlockingMode
权限的用户和应用程序可以绕过阻止并继续执行写入。
兼容性
此命令在以下环境中的部署中可用
MongoDB Enterprise:基于订阅、自我管理的 MongoDB 版本
MongoDB Community:源代码可用、免费使用和自我管理的 MongoDB 版本
重要
此命令在MongoDB Atlas集群中不受支持。有关所有命令的Atlas支持信息,请参阅不受支持的命令。
语法
该命令具有以下语法
db.adminCommand( { setUserWriteBlockMode: 1, global: <boolean> } )
命令字段
该命令包含以下字段
字段 | 类型 | 描述 |
---|---|---|
setUserWriteBlockMode | 整数 | 将此字段设置为 1 。 |
全局 | 布尔值 | 当设置为 true 时,将阻止集群上的写操作。要启用集群上的写操作,请设置为global: false 。 |
所需访问权限
要执行setUserWriteBlockMode
命令,用户必须拥有setUserWriteBlockMode
权限。
示例
启用用户写阻塞模式
db.adminCommand( { setUserWriteBlockMode: 1, global: true } ) 向集合中添加记录
db.names.insertOne( { name: "George Washington Cable" } ) 服务器阻止写入,因为用户写阻塞已被启用。
示例输出
MongoServerError: User writes blocked 禁用用户写阻塞模式
db.adminCommand( { setUserWriteBlockMode: 1, global: false } ) 向集合中添加记录
db.names.insertOne( { name: "George Washington Cable" } ) insertOne()
方法写入集合。服务器允许写入,因为用户写阻塞已被禁用。