zoukankan      html  css  js  c++  java
  • mongodb写入安全级别

    MongoDB的写安全机制

    写入安全(Write Concern)是一种由客户端设置的,用于控制写入安全级别的机制,通过使用写入安全机制可以提高数据的可靠性。

    MongoDB提供四种写入级别,分别是:

    • (Unacknowledged)非确认式写入
    • (Acknowledged)确认式写入
    • (Journaled)日志写入
    • (Replica Acknowledged)复制集确认式写入

     

    1. 非确认式写入

     

    2. 确认式写入

     

    3. journal日志写入

    64位机器上,MongoDB 2.0以上版本默认情况下是开启journal

    journal文件位于journal目录中,只能以追加方式添加数据,文件名以j._开头

    数据库正常关闭时(例如:db.shutdownServer()来关闭数据库),数据库服务会清空journal目录下的所有文件

    MongoDB数据库每隔100ms或30ms向journal文件中flush一次数据

    journal日志和data数据在一个磁盘上时每隔100ms刷新一次,不在一个磁盘上时30ms刷新一次,建议把journal日志和data数据放在不同的磁盘上,提高数据的可靠性

    4. 复制集确认式写入

    5.写入安全级别的使用

    W选项

    0:非确认式写入

    1:确认式写入

      说明:这个级别下,对副本级只对主库做确认写入

    2:副本级确认式写入

      说明:这个级别下,副本级第一个slave写入成功后就响应给client

    majority:复制级更多slave写入成功后,在响应给client

    示例代码

    //连接数据库
    dbService = connect("localhost:27017");
    //选择插入集合
    db = dbService.getSiblingDB("jike");
    
    //创建bluk对象用于批量插入
    db.write_concern.drop();
    
    //测试数据
    var doc1 = {
        name:"xiaoli",
        age:20,
        address:
        {
            province:"GuangDong",
            city:"ShenZhen"
        }
    }
    
    print("======writeConcern的使用 - 非确认式写入======")
    var result = db.wirte_concern.insert(doc1,{writeConcern:{w:0}})
    printjson(result)
    
    print("======writeConcern的使用 - 确认式写入======")
    var result = db.wirte_concern.insert(doc1,{writeConcern:{w:1}})
    printjson(result)
    
    print("======writeConcern的使用 - 确认式写入 + journaled + wtimeout======")
    var result = db.wirte_concern.insert(doc1,{writeConcern:{w:1,j:true,wtimeout:5}})
    printjson(result)
  • 相关阅读:
    A simple class to play sound on netcf
    NETCF运行平台检测
    [翻译]XNA 3.0 Game Programming Recipes之thirtynine
    [翻译]XNA 3.0 Game Programming Recipes之thirtyfour
    [翻译]XNA 3.0 Game Programming Recipes之thirtyseven
    [翻译]XNA 3.0 Game Programming Recipes之thirtysix
    [翻译]XNA 3.0 Game Programming Recipes之thirtyfive
    [翻译]XNA 3.0 Game Programming Recipes之forty
    [翻译]XNA 3.0 Game Programming Recipes之thirtyeight
    [翻译]XNA 3.0 Game Programming Recipes之fortyone
  • 原文地址:https://www.cnblogs.com/phpfans/p/4852808.html
Copyright © 2011-2022 走看看