刷新磁盘


  • Lv 1

    在Mongodb中使用db.runCommand({fsync:1})命令可以将内存中尚未写入磁盘的信息写入磁盘,并锁住对数据库更新的操作,但读操作还能继续(注: fsync命令只能在admin库上进行操作):

    例1:

    1. > use admin  
    2. switched to db admin  
    3. > db.runCommand({fsync:1})  
    4. { "numFiles" : 5, "ok" : 1 }  
    5. >   

    验证数据库状态:db.currentOp()

    例2:

    1. > db.currentOP()  
    2. { "inprog" : [ ] }  
    3. >   

    通过指定参数lock:1来锁定数据库的写操作:

    例3:

    1. > db.runCommand({fsync:1,lock:1})  
    2. {  
    3.     "info" : "now locked against writes, use db.fsyncUnlock() to unlock",  
    4.     "seeAlso" : "http://www.mongodb.org/display/DOCS/fsync+Command",  
    5.     "ok" : 1  
    6. }  
    7. > db.users.insert({"name":"yangbei"})  

    当我在锁定对数据库的写操作后,如果我执行写操作,则该连接session会处于阻塞等待状态 


登录后回复
 

与 萌阔论坛 的连接断开,我们正在尝试重连,请耐心等待