我需要将MongoDB集合从一个数据库复制到其他数据库。如果源集合中没有数据,我需要创建一个空集合。如何使用mongoose libraray在nodejs中做到这一点?
答案 0 :(得分:1)
将集合从数据库复制到另一个集合的最有效方法可能是使用shell中的mongodump / mongorestore:
sh$ echo 'db.createCollection("some_collection")' | mongo my_dst_db
sh$ mongodump --db my_src_db --collection some_collection --out=- | \
mongorestore --db my_dst_db --collection some_collection --dir=-
第一个命令将使用mongo
来创建目标集合。根据您的用例,这是必需的,因为我刚刚测试过,mongorestore
将不会创建一个空集合。之后,这只是一个转储/恢复过程。
请注意mongodump
会接受--query
参数,以防您需要部分副本。