首先请注意,这个问题是来自以下两个MongoDB:如何将两个集合/数据库合并为一个?
MongoDB: Combine data from multiple collections into one..how?
Merging two collections in MongoDB
我将解释如下不同:
我有两个数据库命名为:DB_A
和DB_B
在我的MongoDB中。
每个数据库都有一个同名的集合store
。
两个集合有很多很多的文档中有完全相同的结构{关键:“KEY1”,值:“值1”}等
其实,我本来只能创建DB_A
和插入所有文档到DB_A
。但后来当我进行第二轮插入时,我输入了错误的名称作为数据库名称,从而导致了一个错误。
所以现在每个数据库的大小都是32GB,我想合并两个数据库。
一个问题/限制是现在可用的空闲空间只有15GB,所以我不能只从copy
所有的东西从DB_B
到DB_A
。
我在想我是否可以做move
?或者最简单/最好/最简单的方法来合并两个简单的数据库?我更喜欢最有效的方式,因为只需将32GB重新插入DB_A
将需要相当长的时间。
从DB_B获取第一个文档。将它插入到DB_A中(如果尚未存在)。从DB_B中删除它。重复,直到完成。 –
@SergioTulentsev如果我只是删除DB_B并重新插入(DB_B的)所有东西到DB_A使用我的代码,这种方式会比你建议的更慢吗? – Jack
如果您的所有数据都在DB_B中,那么您可以删除DB_A并重命名DB_B。 –