2014年4月8日
MongoDB 2.6现在可用。主要功能包括聚合增强,文本搜索集成,查询引擎改进,新的写操作协议和安全性增强。
lsn
文件)可能早于同步到数据文件的位置:
SERVER-22261。mongos
了检测副本集故障转移并将读取操作正确路由到新的主SERVER-18280的能力getMore
运行
的查询的报告db.currentOp()
mongos
system.profile
集合
SERVER-18211中mongos
实例SERVER-17441相关的连接处理相关的崩溃_id
群集中的查询从聚合管道中删除重复的(孤立的)文档
SERVER-17426geoNear
具有多个2dsphere
索引的服务器查询中的
崩溃SERVER-14723listCollections
向2.6 Shell和客户端SERVER-17087添加命令功能copydb
/ clone
如果主服务器退出,命令可能会使服务器崩溃SERVER-16599mongos
片具有多个标签时减少的内存占用量SERVER-16683/etc/init.d/mongod
启动脚本失败,目录名称为
SERVER-16081mongos
可引起碎片通过请求超过需要的结果打在内存中的排序限制SERVER-14306mongod
mongod
添加到具有12个或更多成员的2.8复制集时,segfault会崩溃SERVER-16107$regex
,$in
并且$sort
带有索引返回太多结果SERVER-15696moveChunk
如果目标分片上有数据并且所需的索引不存在,将失败。
服务器-12472$rename
现在使用正确的点分源路径SERVER-15029.ns
创建时显式零文件SERVER-15369text
索引,在特定情况下,对text
-indexed字段进行就地更新可能会导致不正确/不完整的结果SERVER-14738_id
带投影的相等查询可能不会对分片集合SERVER-14302返回任何结果。_id
带投影的相等查询_id
可以返回分片集合SERVER-14304上的孤立文档。mongod
如果x.509身份验证证书无效,则可能终止
SERVER-13753。mongos
为嵌套字段分片键谓词SERVER-14138错误地针对多个分片。rs.stepDown()
在mapReduce期间导致fassert
写入操作日志SERVER-14186时导致。--install
选项SERVER-13515在Windows上安装MongoDB服务的问题。yum
SERVER-13563从2.4.x直接升级到2.6.0 。MongoDB中的以下更改会影响标准版和企业版:
聚合管道通过返回游标或将输出写入集合来增加返回任意大小结果集的功能。此外,聚合管道支持变量,并添加了新操作来处理集合和修订数据。
现在默认情况下启用文本搜索,并且查询系统(包括聚合管道$match
阶段)包括
$text
运算符,该运算符可解析文本搜索查询。
MongoDB 2.6包含更新的文本索引格式,并且不赞成使用该text
命令。
更新和插入系统的改进包括其他操作和改进,这些操作和改进可以提高修改后的数据的一致性。
_id
字段始终是文档中的第一个字段。renaming
字段名称的更新可能会导致文档中字段的重新排序。$mul
运营商的插入和更新操作乘法增量。也可以看看
一种新的写协议将写操作与写关注点集成在一起。该协议还为批量操作提供了改进的支持。
MongoDB 2.6添加了写入命令insert
,
update
和delete
,它们为改进的批量插入提供了基础。所有官方支持的MongoDB驱动程序都支持新的write命令。
mongo
现在,外壳程序包含执行批量写入操作的方法。请参阅Bulk()
以获取更多信息。
也可以看看
MongoDB现在为Microsoft Windows分发MSI软件包。这是在Windows下安装MongoDB的推荐方法。
MongoDB 2.6通过改进的SSL支持,基于x.509的身份验证,具有更精细的控件的改进的授权系统,集中的凭据存储以及改进的用户管理工具,增强了对安全部署的支持。
具体来说,这些更改包括:
admin
数据库中,并提供了一组用于管理用户和角色的新命令。enabled
。也可以看看
$or
表达式中的地理空间查询子句。重新启动后自动重建中断的索引。
mongod
则当实例重新启动时,现在将重新启动索引构建。如果实例完全关闭,或者如果用户终止了索引构建,则中断的索引构建不会在服务器重新启动时自动重新启动。mongod
实例将在实例重新启动时重新启动中断的索引构建。若要禁用此行为,请使用--noIndexBuildRetry
命令行选项。
ensureIndex()
现在包装一个新
createIndex
命令。
该dropDups
选项ensureIndex()
和createIndex
已被弃用。
也可以看看
cleanupOrphaned
用于从分片中删除孤立文档的新命令。mergeChunks
合并位于单个分片上的连续块的新命令。查看mergeChunks
和
合并分片群集中的块。rs.printReplicationInfo()
和
新rs.printSlaveReplicationInfo()
方法。usePowerOf2Sizes
现在是所有新集合的默认分配策略。相对于总文档大小,新的分配策略使用更多的存储,但是随着时间的推移,将导致较低的存储碎片级别和更可预测的存储容量计划。
要使用先前的精确匹配分配策略:
对于特定集合,将set collMod
与一起
使用。usePowerOf2Sizes
false
对于整个mongod
实例上的所有新集合,设置newCollectionsUsePowerOf2Sizes
为false
。
新产品系列包括:期间创建
初始同步,以及那些通过创建mongorestore
和mongoimport
工具,通过运行mongod
与--repair
选项,还有
restoreDatabase
命令。
有关MongoDB存储系统的更多信息,请参见/ core / storage。
maxIncomingConnections
for mongod
和的上限mongos
。以前的版本限制了连接的最大可能
maxIncomingConnections
设置20,000
。mongos
实例的连接池可以由多个MongoDB服务器使用。这可以减少大量工作负载所需的连接数量,并减少分片群集中的资源消耗。isMaster
replSetGetStatus
cursor.maxTimeMS()
和相应maxTimeMS
选项。mongo
Shell支持全局/etc/mongorc.js。--quiet
禁止显示所有日志输出(错误消息除外)的选项。mongoimport
如果运行不带-c
或
--collection
规范的输入名称,则使用不带文件扩展名的输入文件名作为集合名称。mongoexport
现在可以使用限制输出数据