Meteor 1.7.0.x 中默认的 MongoDB 驱动版本是 3.0.7
我需要使用 MongoDB 驱动程序版本 3.1,因为可重试写入已在 3.1 中修复以进行多个文档更新 (https://jira.mongodb.org/browse/NODE-1513)
如何将驱动程序版本 3.1 与 Meteor 1.7.0.x 一起使用?
最佳答案
以下是解决方法指南,不应在生产应用中使用!
请注意,最后一个标记为稳定的 mongodb
驱动程序版本仍然是 3.0.11
(2018/09)。因此,您应该假设 MDG 在新版本被宣布为稳定之前不会更新 mongo 驱动程序。
使用任何最新版本都可能导致未知/意外行为,尤其是在生产环境中。继续自担风险。
进行中
- 在您的项目目录中创建一个
packages
文件夹
$ cd ~/path/to/your-project
$ mkdir -p packages
克隆或下载meteor from Github (到
~/path/to/meteor
)。将核心包从 meteor 复制到你的包文件夹
$ cd ~/path/to/meteor/packages/
$ cp -r npm-mongo ~/path/to/your-project/packages/
- 将文件
package.js
编辑成如下latest发布(当前为 3.1.4):
// This has been moved out of the `mongo` package so it can be used by the tool
// via isopacket, without having to also load ddp-server.
Package.describe({
summary: "Wrapper around the mongo npm package",
version: "3.1.4",
documentation: null
});
Npm.depends({
mongodb: "3.1.4"
});
Package.onUse(function (api) {
api.addFiles("wrapper.js", "server");
api.export([
"NpmModuleMongodb",
"NpmModuleMongodbVersion",
], "server");
});
- 运行您的应用,双手合十。
替代步骤
- 无需从源代码下载整个 Meteor 项目,您只需在
packages/
中创建一个名为npm-mongo
的新文件夹,然后从 here 复制文件即可,然后根据上面的指南编辑package.js
。
关于node.js - 在 Meteor 1.7.0.4 中升级 MongoDB 驱动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51952334/