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)
mongodb写入安全级别的更多相关文章
- .NET 云原生架构师训练营(模块二 基础巩固 MongoDB 写入和查询)--学习笔记
2.5.3 MongoDB -- 写入和查询 写入 查询 查找操作符 逻辑操作符 其他 嵌套对象 数组 游标方法 写入 https://docs.mongodb.com/manual/tutorial ...
- mongodb写入策略(WriteConcern)
写入策略(WriteConcern) mongodb的写入策略有多种方式,写入策略是指当客户端发起写入请求后,数据库什么时候给应答,mongodb有三种处理策略:客户端发出去的时候,服务器收到请求的时 ...
- MongoDB Notes
MongoDB 启动一个 mongo 实例 $ docker run --name some-mongo -d daocloud.io/mongo 由于该镜像的 Dockerfile 中包含了 EXP ...
- Mongodb Manual阅读笔记:CH4 管理
4 管理 Mongodb Manual阅读笔记:CH2 Mongodb CRUD 操作Mongodb Manual阅读笔记:CH3 数据模型(Data Models)Mongodb Manual阅读笔 ...
- 十个 MongoDB 使用要点
转自: 十个 MongoDB 使用要点 从 mongodb 阶段性技术总结 中抽取并整理了对大家有帮助的十个要点: 1.mongodb 表名和字段名统一用小写字母 mongodb 是默认区分 ...
- centos7源码包安装Mongodb,并设置开机自启动
1.下载源码包 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.12.tgz 2.解压 放到 /usr/local/ ...
- MongoDB之 写安全(Write Concern)
MongoDB Write Concern,简称MongoDB写入安全机制,是一种客户端设置,用于控制写入安全的级别.Write Concern 描述了MongoDB写入到mongod单实例,副本集, ...
- mongodb 慕课网
------------------------------------------------mongodb简述------------------------------------------- ...
- logstash-out-mongodb实现elasticsearch到Mongodb的数据同步
本文主要实现将Elasticsearch中的索引数据Index同步到Mongodb中的集合collection中. 0.前提 1)已经安装好源数据库:elasticsearch V2.X; 2)已经安 ...
随机推荐
- 第一章:ESXi6.7虚拟化环境安装
1.1 硬件环境及镜像引导准备 1.1.1 硬件和系统资源 要安装ESXi6.7,硬件和系统资源必须满足下列要求: ESXi 6.7 要求主机至少具有两个 CPU 内核,生产环境中需要根据 ...
- 十八、linux系统分区
一.磁盘存储结构图:这里注意下,分区标有64字节,则每个分区有16字节,MBR引导分区有446字节,共有510字节,一个扇区有512字节,还有俩个字节是分区结束标识.比如隐藏文件等标识,都是这2个字节 ...
- 实验报告8 AC+Fit AP组网通过三层网络注册(DHCP Option 43)
实验报告8 课程名称 无线网络与安全技术 实验名称 AC+Fit AP组网通过三层网络注册(DHCP Option 43) 姓名 学号 班级 实 验 目 的 [实验目的] 了解AC+Fit AP跨 ...
- Spring的@Transactional(readOnly=true)注解,对其效果进行测试
https://blog.csdn.net/xcdsdf14545/article/details/86164012
- PRaCtice[1]
目录 ID-3学习 代码实现 1. 样例数据集 2.信息熵的计算 ID-3学习 代码实现 该项目采用了业界领先的 TDD(TreeNewBee-Driven Development,吹牛逼导向开发模式 ...
- 路由器协议----IGP、EGP、RIP、OSPF、BGP、MPLS
1.路由控制的定义 <br>1.1.IP地址与路由控制 file:///var/folders/pz/cy11_lpd5rqfs66s778032580000gn/T/51.html ...
- 信贷风控模型开发----模型流程&好坏样本定义
第二章 模型开发流程&好坏样本定义 2.1模型开发流程 2.1.1 评分模型流程图 2.1.2流程图阐述 该小结提出了一些数据指标,如果不明白没有关系,往后的文章笔者会一个个地解释这些指标的含 ...
- EXAM-2018-7-27
EXAM-2018-7-27 未完成 [ ] F A 要用ll,然后注意正方形的情况,细心一点 E 有点动态规划的感觉,状态的转移,不难,要注意不要漏掉状态 K 正解是DFS 然后用贪心数据弱的话能过 ...
- Django获取当前时间和Linux系统时间不一致
配置文件中修改:TIME_ZONE的值改为上海,USE_TZ的值改为False,重启项目即可
- Lua-文件操作
简单模式和完全模式 简单模式(simple model)拥有一个当前输入文件和一个当前输出文件,并且提供针对这些文件相关的操作. 完全模式(complete model) 使用外部的文件句柄来实现.它 ...