Mongodb:db.collection.copyTo()和eval()已被弃用.有什么选择?

Fen*_* Yu 18 mongodb

我发现db.collection.copyTo()eval()自3.0以来已被弃用.但我找不到可以改变的东西.

有什么选择?

小智 9

对于服务器端解决方案,您可以使用聚合...

db.getCollection('source')
    .aggregate([
        { $out: 'destination' }
    ]);
Run Code Online (Sandbox Code Playgroud)


Sha*_*ell 4

根据MongoDB Group 上的讨论。

另一种方法是使用普通的 MongoDB 查询语言和客户端驱动程序 API 来实现等效的查询/操作

因此,这意味着在客户端环境(例如 Node.js)中编写查询并以这种方式执行它们。如果在连接到本地主机的服务器上运行,它们应该很快,尽管可能不如使用eval.

此票证中概述了弃用的理由。 https://jira.mongodb.org/browse/SERVER-17453