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版本新增特性的更多相关文章

  1. MongoDB3.4版本新增特性

    先说明一下mongod和mongos的含义:mongod是MongoDB系统的主要后台进程,它处理数据请求.管理数据访问和执行后台管理操作:该命令的命令行选项主要用于测试,在场景操作中,使用配置文件选 ...

  2. Java各版本新增特性, Since Java 8

    Java各版本新增特性, Since Java 8 作者:Grey 原文地址: Github 语雀 博客园 Java 8 Reactor of Java 这一章来自于<Spring in Act ...

  3. Java SE 8 新增特性

    Java SE 8 新增特性 作者:Grey 原文地址: Java SE 8 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new_ ...

  4. Java SE 9 新增特性

    Java SE 9 新增特性 作者:Grey 原文地址: Java SE 9 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new_ ...

  5. Java SE 10 新增特性

    Java SE 10 新增特性 作者:Grey 原文地址:Java SE 10 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...

  6. Java SE 11 新增特性

    Java SE 11 新增特性 作者:Grey 原文地址:Java SE 11 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...

  7. Java SE 12 新增特性

    Java SE 12 新增特性 作者:Grey 原文地址:Java SE 12 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...

  8. Java SE 13 新增特性

    Java SE 13 新增特性 作者:Grey 原文地址:Java SE 13 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...

  9. Java SE 14 新增特性

    Java SE 14 新增特性 作者:Grey 原文地址:Java SE 14 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...

随机推荐

  1. 自定义BeanDefinitionRegistryPostProcessor注册bean

    自定义BeanDefinitionRegistryPostProcessor 概述 BeanDefinitionRegistryPostProcessor继承自BeanFactoryPostProce ...

  2. Linux系统的用户和用户组管理

    一.用户账户管理 Linux/Unix是一个用户.多任务的操作系统:在讲Linux账号及账户组管理之前,先简单了解一下多用户.多任务操作系统的基本概念. Linux的单用户多任务 在Linux下,当你 ...

  3. cloud-init使用技巧

    对于 Linux 镜像,cloud-init 负责 instance 的初始化工作.cloud-init 功能很强大,能做很多事情,而且我们可以通过修改配置文件灵活定制 cloud-init. clo ...

  4. mysql笔记(暂时)

    2018-05-28 create table cms_user(id int key auto_increment,username varchar(20),password varchar(20) ...

  5. 免费丨十大IT热门学科在线直播体验课正式来袭,全免费!!!

    一场突如其来的疫情阻挡了人与人之间的接触,在这一系列困难面前,无数勇敢的人们挺身而出,千里驰援,默默承担,用行动践行责任与信念,希望与祖国和家人一道共渡难关. 传智播客作为一家致力于“高精尖”IT科技 ...

  6. shell命令之一天一见:grep

    一. 简介 grep (缩写来自Globally search a Regular Expression and Print)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来 ...

  7. Druid 0.17 入门(2)—— 安装与部署

    在Druid快速入门其实已经简单的介绍过最简化配置的单节点部署,本文我们将详细描述Druid的多种部署方式,对于测试开发环境可以选用轻量的单机部署方式,而生产环境我们最好选用集群部署的方式,确保系统的 ...

  8. 【5min+】 巨大的争议?C# 8 中的接口

    系列介绍 [五分钟的dotnet]是一个利用您的碎片化时间来学习和丰富.net知识的博文系列.它所包含了.net体系中可能会涉及到的方方面面,比如C#的小细节,AspnetCore,微服务中的.net ...

  9. Spring监听器---ApplicationListener

    说到事件监听,想到的肯定是观察者模式.但是这儿主要说下spring中的监听是怎么样的流程. 这就不得不说到spring容器的refresh方法,容器启动过程中,listener相关的主要是这个三个方法 ...

  10. FFmpeg命令读取RTMP流如何设置超时时间

    子标题:FFmpeg命令录制RTMP流为FLV文件时如何设置超时时间 | FFmpeg命令如何解决录制产生阻塞的问题0x001: 前言 今天在测试程序时遇到两个问题.Q1:ffmpeg录制RTMP流并 ...