mongodb - 如何在 MongoDB 中执行一次性数据库同步到另一个数据库?

标签 mongodb synchronization database

我有单独的开发和生产 MongoDB 服务器,我想将实际数据保留在开发服务器中一段时间​​。我应该使用它:mongodump , mongoimport还是别的什么?

Clarification : 我想将数据从生产复制到开发。

最佳答案

如果是一次性的

并且您希望对参数进行精细控制,例如要同步哪些集合,您应该使用:

  • mongodump将生产数据库的 bson 文件转储到本地计算机
  • mongorestore然后,在本地数据库中检索转储的 BSON 文件

否则您应该查看 mongo-sync

这是我为自己编写的脚本,当时我不得不不断将本地 MongoDB 数据库复制到我的生产数据库或从我的生产数据库中复制一个项目(我知道这很愚蠢)。

将数据库详细信息放入 config.yml 后,您可以使用两个简单的命令开始同步:

./mongo-sync push       # Push DB to Remote
./mongo-sync pull       # Pull DB to Local

如果你在某个项目中使用它,最好将 config.yml 添加到 .gitignore

mongo-sync demo gif

关于mongodb - 如何在 MongoDB 中执行一次性数据库同步到另一个数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12419181/

相关文章:

node.js - 通过 NodeJS 服务器从 Amazon S3 传递文件而不暴露 S3 URL?

Java 线程同步 - Thread.sleep() 方法未按预期工作

python - 保持部分离线的 sqlite 数据库与 postgresql 同步

google-cloud-firestore - 如何实现自己的后台和手机APP实时同步?

database - 预加载数据的好方法是什么?

mysql - 如何访问单向ManyToOne关联的目标实体的方法

mongodb - 从 $lookup 中获取数组中元素的过滤计数以及整个文档

mongodb - 使用nodejs在mongoDB中将字符串转换为聚合整数

node.js - Mongoose ,从数组中删除一个对象并更新其他对象

java - interned 字符串上的嵌套同步块(synchronized block)