【问题标题】:how to run db.fsyncLock() with Motor如何使用 Motor 运行 db.fsyncLock()
【发布时间】:2017-03-07 09:17:00
【问题描述】:

是否可以通过 Motor 运行 db.fsyncLock() 命令?我希望我的应用程序对数据库进行备份,并且需要在制作副本之前刷新并锁定文件。

【问题讨论】:

    标签: tornado-motor


    【解决方案1】:

    mongo shell 通过调用 MongoDB 命令执行 fsyncLock:

    https://docs.mongodb.com/manual/reference/method/db.fsyncLock/

    如该页面所示,shell 提供了一个简单的 fsync 数据库命令包装器,语法如下:

    { fsync: 1, lock: true }
    

    因此,您可以使用 Motor 作为任何 MongoDB 命令运行它:

    await client.admin.command(SON([('fsync', 1), ('lock', true)]))
    

    这里,“客户端”是一个 MotorClient。如果您在使用“async def”定义的本机协程中,请使用“await”,如果您在使用“@gen.coroutine”修饰的基于生成器的协程中,请使用“yield”。

    【讨论】:

      猜你喜欢
      • 2022-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多