MongoDB3.6版本新增特性
MongoDB3.6版新特性如下:
(1)Default Bind to Localhost
从3.6版本开始,在默认情况下,MongoDB二进制文件mongod和mongos绑定到localhost(127.0.0.0)上。如果在二进制文件中设置了--ipv6选项或者在配置文件中配置了net.ipv6,则默认会绑定到IPv6地址::1。
- 绑定本地主机时,只接受来自同一台计算机上的客户端的连接,这里的客户端包括mongo Shell,集群成员。
- 通过net.bindIp配置文件或者bind_ip命令行选项可以实现绑定到指定的IP地址列表。
- bind_ip可以通过0.0.0.0来绑定所有,也可以设置bindIpAll为true值来绑定所有IP。
(2)Authentication Restrictions
从3.6版本开始,新增authenticaitonRestrictions参数用于将数据用户连接限制为指定的IP地址。
(3)Change Streams
- 3.6版本支持使用副本集或分片使用Change Streams,必须时复制协议版本1,且WT存储引擎。
- Change Streams允许应用程序实时了解数据的更改,可以实现一个发布订阅模式。
- 使用Change Streams必须开启3.6版本特性参数featureCompatibilityVersion。
(4)Causal Consistency
保障数据一致性,需要客户端使用MongoDB driver 3.6,同时数据库开启featureCompatibilityVersion特性参数。
(5)Retryable Writes
- 重试次数为1次。
- 只有副本集和shard可用。
- 数据库要求WT或in-memory存储引擎。
- 客户端使用MongoDB driver 3.6,数据库开启featureCompatibilityVersion特性参数。
- writeconcern必须配置,i.e{w:0}不可用。
- 重试只能解决暂时的网络错误,不能解决持久的网络错误。
- 驱动程序将等待serverSelectionTimeoutMS时间,以在重试之前确定新的主节点;可重试写入处理故障转移时间不会超过serverSelectionTimeoutMS(默认30s)。
(6)serverStatus
serverStatus新增logicalSessionRecordCache项。
一、复制集(Replica Sets)
- 弃用副本集协议版本0(pv0)。
- 添加replSetResizeOplog命令:动态调整副本集成员的oplog的大小。
- 添加catchUpTakeoverDelayMillis配置选项:指定节点在发起选举之前等待的时间,默认为30秒。
- 添加oplogInitialFindMaxSeconds参数:配置副本集的成员在数据同步期间其find命令等待多久,默认为60秒。
- 添加waitForSecondaryBeforeNoopWriteMS参数:用以指定如果afterClusterTime大于oplog的最近应用时间,则Secondary服务器必须等待多久时间,默认为10毫秒。
二、分片集群(Sharded Clusters)
- listdatebase
- Read Concern
MongoDB3.6版本新增特性的更多相关文章
- MongoDB3.4版本新增特性
先说明一下mongod和mongos的含义:mongod是MongoDB系统的主要后台进程,它处理数据请求.管理数据访问和执行后台管理操作:该命令的命令行选项主要用于测试,在场景操作中,使用配置文件选 ...
- Java各版本新增特性, Since Java 8
Java各版本新增特性, Since Java 8 作者:Grey 原文地址: Github 语雀 博客园 Java 8 Reactor of Java 这一章来自于<Spring in Act ...
- Java SE 8 新增特性
Java SE 8 新增特性 作者:Grey 原文地址: Java SE 8 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new_ ...
- Java SE 9 新增特性
Java SE 9 新增特性 作者:Grey 原文地址: Java SE 9 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new_ ...
- Java SE 10 新增特性
Java SE 10 新增特性 作者:Grey 原文地址:Java SE 10 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...
- Java SE 11 新增特性
Java SE 11 新增特性 作者:Grey 原文地址:Java SE 11 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...
- Java SE 12 新增特性
Java SE 12 新增特性 作者:Grey 原文地址:Java SE 12 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...
- Java SE 13 新增特性
Java SE 13 新增特性 作者:Grey 原文地址:Java SE 13 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...
- Java SE 14 新增特性
Java SE 14 新增特性 作者:Grey 原文地址:Java SE 14 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...
随机推荐
- ios--->上下拉刷新控件MJRefresh
上下拉刷新控件MJRefresh 一.类结构 MJRefreshComponent.h MJRefreshHeader.h MJRefreshFooter.h MJRefreshAutoFooter. ...
- Matlab 与 c++对txt 文档的读写格式
学习g++能够读取什么格式的txt文件. 读基本指令: >sprintf(filename, "doc_%d.txt", d); >fileptr = fopen(fi ...
- MySQL 清理缓存—flush tablesFlush tables的影响
摘自:http://blog.chinaunix.net/uid-31401119-id-5781305.html 1 Flush tables简介 官方手册中关于Flush tables的介绍, ...
- <背包>solution-CF118D_Caesar's Legions
Caesar's Legions Gaius Julius Caesar, a famous general, loved to line up his soldiers. Overall the a ...
- 使用vscode进行远程开发
1.前置条件,安装SSH客户端.OpenSSH或者Git两者任选其一即可,本文使用的是Git 2.安装 Remote Development 扩展包 官方地址为:https://marketplace ...
- django登录页面优化
环境准备 1.python3.6 2.django2.0+ 3.bootstrap3 后台代码 #创建login_check视图函数,用来处理登录 def login_action(request): ...
- Java properties文件集
log4j: log4j.rootLogger=info, console, log, error ###Console ### log4j.appender.console = org.apache ...
- android webview正确显示音标
package com.example.fonttest; import android.support.v7.app.ActionBarActivity; import android.webkit ...
- Codeforces Gym101234G Dreamoon and NightMarket(优先队列,子集和第k大)
题意: 求子集和第k大,n,k<=1e6 思路: 优先队列经典题目,注意优先队列是默认按从大到小排的 代码: #include<iostream> #include<cstdi ...
- Leetcode题解 - 部分中等难度算法题解(56、957、825、781、1324、816)
957. N 天后的牢房 思路: 模拟变换,当N天结合后返回 => 当N非常大的时候,超时 => 一般N很大的时候,这种题目必然存在循环,所以记录找过的状态,一旦出现已经访问过的状态可立即 ...