删除数据库并创建具有相同名称问题的数据库

时间:2019-02-04 16:59:14

标签: node.js mongodb mongoose drop-database

我正在使用nodejs,Mongoose和mongodb数据库。

有时我看到,如果删除包含内部某些集合的数据库,则当我运行在数据库中具有相同集合的节点(具有相同名称)时,要保存为新信息的信息实体显示不正确。

当我将数据库放在mongo db shell中时,我还需要提及的是,我还手动删除了c:/ data / db(默认的mongo db文件夹)中的所有catch文件。

我检查了mongo文档,如果您使用与已删除数据库相同的名称来创建数据库,有时可能会出现问题。位于https://docs.mongodb.com/manual/reference/method/db.dropDatabase/#db.dropDatabase

1 个答案:

答案 0 :(得分:0)

您回答了自己的问题。您链接的文档描述了解决方案:

  

警告::如果删除数据库并创建具有相同名称的新数据库,则必须重新启动所有mongos实例,或者在所有mongos实例上使用flushRouterConfig命令,然后再对其进行读写数据库。此操作可确保mongos实例刷新其元数据缓存,包括新数据库的主分片的位置。否则,mongos可能会丢失读取数据,并可能将数据写入错误的分片。