On this page
MongoDB 2.4 发行说明
- 2013 年 3 月 19 日*
在本页面
MongoDB 2.4 包括增强的地理空间支持,切换到 V8 JavaScript 引擎,安全性增强以及文本搜索(测试版)和哈希索引。
Minor Releases
2.4.14 – 2015 年 4 月 28 日
与文档SERVER-17780相比,初始化脚本将进程 ulimit 设置为不同的值
计算 v8 SERVER-17647中的 BinData 长度
将 PCRE 版本从 8.30 升级到最新的SERVER-17252
2.4.13 – 2015 年 2 月 25 日
强制执行 BSON BinData 长度验证SERVER-17278
禁用 SSLv3 密码SERVER-15673
改善 BSON 验证SERVER-17264
2.4.12 – 2014 年 10 月 16 日
部分写入日记帐的最后一部分会导致恢复失败SERVER-15111。
在创建SERVER-15369时显式将
.ns
个文件清零。
2.4.11 – 2014 年 8 月 18 日
修复了潜在的信息泄漏:SERVER-14268。
已解决的问题是带有
$prefix
字段的_id
由于未验证的插入SERVER-12209导致复制失败。解决了对带有文本索引字段的文档进行更新可能导致 Importing 错误SERVER-14738的问题。
解决了在
_id
上创建降序索引可能损坏命名空间SERVER-14833的问题。
2.4.10 – 2014 年 4 月 4 日
如果可用SERVER-8480,则在 Windows 上执行快速文件分配。
如果检测到多个主要节点SERVER-10793,则开始选举。
为了安全地从 v2.6 降级到 v2.4 SERVER-12914,SERVER-12175而进行的更改。
修复了索引创建SERVER-12481,SERVER-12956中的边缘情况。
2.4.9 – 2014 年 1 月 10 日
修复了mongos错误地报告成功写入SERVER-12146的情况。
使非主要读取首选项与
slaveOK
版本控制逻辑SERVER-11971一致。当主节点断开SERVER-7246时,允许新的分片群集连接从辅助节点读取。
2.4.8 – 2013 年 11 月 1 日
增加对 2.6 授权功能SERVER-11478的将来兼容性。
修复配置服务器SERVER-11421的
dbhash
缓存问题。
2.4.7 – 2013 年 10 月 21 日
修复了 V8 隔离SERVER-10596的过度攻击性缓存。
在 mapReduce SERVER-9907期间删除了无关的初始计数。
dbhash 命令SERVER-11021的缓存结果。
修复了聚合SERVER-10554中的内存泄漏。
2.4.6 – 2013 年 8 月 20 日
如果块中的文档很大SERVER-10478,则修复了在块迁移过程中可能丢失文档的问题。
解决了 CClient 端关闭问题SERVER-8891。
在存在高网络延迟SERVER-10085的情况下提高了复制的健壮性。
改进的 Solaris 支持SERVER-9832,SERVER-9786和SERVER-7080。
2.4.5 – 2013 年 7 月 3 日
CVE-2013-4650 的修复不正确地授予本地SERVER-9983以外的数据库的用户系统特权。
修复了 CVE-2013-3969 Javascript 引擎SERVER-9878中的远程触发的分段错误。
修复了防止构建相同的背景索引SERVER-9856的问题。
配置服务器性能改进SERVER-9864和SERVER-5442。
改进了对网络故障SERVER-9853的初始同步弹性。
2.4.4 – 2013 年 6 月 4 日
Windows 版本SERVER-9721的性能修复
修复了配置升级失败SERVER-9661的问题。
迁移到 MongoDB Enterprise SERVER-8813的 Cyrus SASL 库。
2.4.3 – 2013 年 4 月 23 日
修复了__ shell 忽略修改对象的
_id
字段SERVER-9385的问题。修复了日志旋转SERVER-4739中的竞争条件。
使用授权在分片群集SERVER-9093中修复
copydb
命令。
2.4.2 – 2013 年 4 月 17 日
几个 V8 内存泄漏和性能修复程序SERVER-9267和SERVER-9230。
修复了分片群集SERVER-9125的升级。
修复了大容量连接崩溃SERVER-9014的问题。
2.4.1 – 2013 年 4 月 17 日
修复了在初始同步SERVER-9087期间丢失索引更改的问题
主要新功能
MongoDB 中的以下更改会影响标准版和企业版:
Text Search
添加对 MongoDB 数据库中内容的文本搜索的支持,作为一项* beta *功能。有关更多信息,请参见Text Indexes。
地理空间支持增强功能
添加新的2dsphere index。新索引支持GeoJSON个对象
Point
,LineString
和Polygon
。参见2dsphere Indexes和Geospatial Queries。介绍运算符$geometry,$geoWithin和$geoIntersects以使用 GeoJSON 数据。
Hashed Index
使用字段值的哈希值将新的hashed index添加到索引文档中。当用于索引分片密钥时,哈希索引可确保分片密钥均匀分布。另请参见Hashed Sharding。
汇总框架的改进
改善对地理空间查询的支持。请参阅$geoWithin运算符和$geoNear管道阶段。
添加新的运算符$millisecond和$concat,并修改$min运算符如何处理
null
值。
对更新运算符的更改
Map-Reduce 和$ where 操作的其他限制
mapReduce命令,group命令和$where运算符表达式无法访问mongoShell 程序中可用的某些全局函数或属性,例如db
。有关详细信息,请参见各个命令或运算符。
对 serverStatus 命令的改进
为serverStatus命令提供其他 Metrics 和自定义。有关更多信息,请参见db.serverStatus()和serverStatus。
Security Enhancements
引入基于角色的访问控制系统User Privileges现在对Privilege Documents使用新格式。
在每个数据库的用户特权文档中强制用户唯一。 MongoDB 的早期版本没有强制执行此要求,并且现有数据库可能具有重复项。
支持使用由证书颁发机构签名的 SSL 证书进行加密连接。参见为 TLS/SSL 配置 mongod 和 mongos。
有关安全和风险 Management 策略的更多信息,请参阅MongoDB 安全实践和程序。
Performance Improvements
V8 JavaScript 引擎
将默认的 JavaScript 引擎从 SpiderMonkey 更改为 V8.此项更改为 JavaScript 操作,现代化的 JavaScript 实现以及非标准 SpiderMonkey 功能的删除提供了改进的并发性,并影响了所有 JavaScript 行为,包括命令mapReduce,group和eval以及查询运算符$where。
有关所有更改的更多信息,请参见MongoDB 2.4 中的 JavaScript 更改。
mongod 和 mongorestore 的 BSON 文档验证默认启用
在写入 MongoDB 数据文件时,为mongod和mongorestore启用基本的BSON对象验证。有关详细信息,请参见wireObjectCheck。
索引构建增强
允许db.killOp()方法终止前台索引构建。
在索引创建过程中改进索引验证。有关更多信息,请参见MongoDB 2.4 中的兼容性和索引类型更改。
将参数设置为命令行选项
提供--setParameter
作为mongos和mongod的命令行选项。有关setParameter的可用选项的列表,请参见mongod和mongos。
更改了块迁移的复制行为
默认情况下,在chunk migration期间sharded cluster中移动的每个文档都会传播到至少一个辅助文件夹,然后平衡器才 continue 进行下一个操作。参见块迁移和复制。
改进了块迁移队列行为
提高性能以将多个块移出过载的分片。在开始下一个块迁移之前,平衡器不再 await 当前迁移的删除阶段完成。有关详情,请参见异步块迁移清理。
Enterprise
以下更改特定于 MongoDB 企业版:
SASL 库更改
在 2.4.4 中,MongoDB Enterprise 使用 Cyrus SASL。早期的 2.4 Enterprise 版本使用 GNU SASL(libgsasl
)。要升级到 2.4.4 或更高版本的 MongoDB Enterprise,您必须**安装与此更改相关的所有程序包依赖项,包括适当的 Cyrus SASL GSSAPI
库。有关依赖项的详细信息,请参见安装 MongoDB Enterprise。
支持 Kerberos 的新型模块化身份验证系统
在 2.4 中,MongoDB Enterprise 现在支持通过 Kerberos 机制进行身份验证。有关更多信息,请参见在 Linux 上使用 Kerberos 身份验证配置 MongoDB。有关支持对 MongoDB 进行 Kerberos 身份验证的驱动程序,请参阅Driver Support。
有关安全和风险 Management 策略的更多信息,请参阅MongoDB 安全实践和程序。
Additional Information
Platform Notes
对于 macOS,MongoDB 2.4 仅支持 macOS 版本 10.6(Snow Leopard)和更高版本。 MongoDB 2.4 中没有其他平台支持更改。有关平台支持的更多信息,请参见downloads page。
Upgrade Process
-
- [Meta\-data Upgrade Procedure](release-notes-2.4-upgrade.html#meta-data-upgrade-procedure) - [Resync after an Interruption of the Critical Section](release-notes-2.4-upgrade.html#resync-after-an-interruption-of-the-critical-section)
-
- [Downgrade to 2\.2 After Creating a 2dsphere or text Index](release-notes-2.4-upgrade.html#downgrade-to-2-2-after-creating-a-2dsphere-or-text-index) - [Troubleshooting Upgrade/Downgrade Operations](release-notes-2.4-upgrade.html#troubleshooting-upgrade-downgrade-operations)
有关完整的升级说明,请参见将 MongoDB 升级到 2.4。