- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我想知道人们使用 MongoDB 备份的经验。假设文件系统快照不是一个选项,那么您在使用 mongodump/restore 与执行写锁定和备份文件方面有何经验?您是否遇到过导致您切换的一种方法的任何错误?
从我目前所做的阅读来看,似乎 mongodump/restore 具有能够在服务器处于事件状态时运行它的优势,但我不确定它的扩展性如何。
最佳答案
锁定和复制文件只是当您没有繁重的写入负载时的一种选择。
mongodump
可以在实时服务器上运行。它会产生一些额外的负载,所以不要在高峰时段这样做。此外,建议在辅助节点上进行(如果您不使用副本集,则应该这样做)。
当您拥有一个大到没有一台机器可以容纳它的数据库时,会出现一些复杂情况。见 this document .
此外,如果您有副本集,您可以删除其中一个辅助节点并直接复制其文件。见 http://www.mongodb.org/display/DOCS/Backups :
A simple approach is just to stop the database, back up the data files, and resume. This is safe but of course requires downtime. This can be done on a secondary without requiring downtime, but you must ensure your oplog is large enough to cover the time the secondary is unavailable so that it can catch up again when you restart it.
关于MongoDB:mongodump/restore 与直接备份文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9741111/
我正在尝试获取本地数据库的转储,看来我应该使用: mongodump --host localhost:3002 但是,终端然后告诉我: -bash: mongodump: command not f
我们有一个开发团队会定期从 DEV 中取出 mongodump,然后将其恢复到本地主机以供工作。我们最近在 mongodb 中实现了身份验证,我希望能够让我们的开发团队仅在一个数据库上执行 mongo
如果我跑 mongodump在来自远程主机的数据库上,并且在此过程中,网络连接中断了一段时间...如果我开始 mongodump它会从它完成的地方继续还是从头开始? 关于mongorestore的同样
有没有办法将 mongo 数据库转储到特定的文件夹名称?假设我有一个名为 myDb 的数据库 当我使用时: mongodump --db myDb 它生成一个转储文件夹,里面有一个 myDb 文件夹
我是 mongodb 的新手。我正在尝试使用 备份我的数据库mongodump .但是每当我使用此命令时,我都会收到以下错误 Referenceerror: mongodump is not defi
我正在尝试在线托管我的数据库,根据我在网上找到的内容,我需要先使用 mongodump 导出我的数据库。 如果没有错的话使用mongodump的方法是: mongodump -d -o 当我使用上
我正在尝试从我的辅助系统中转储,以免影响实时流量。 我可以从中成功转储。但是如果我添加一个查询,我会得到 0 个文档。 我需要添加什么才能成功查询我的奴隶? 0 Documents: mongodum
我在我的 mongo 实例上创建了两个具有以下角色的用户 use mydb db.createUser( { user: "dbUser", pwd: "dbPassword",
我正在尝试从通过 gitlab-ci-multirunner 运行的 docker 镜像中访问 mongorestore/mongodump 命令。 我的 .gitlab-ci.yml 看起来像这样:
我有这样的东西: dbs=$(mongo --quiet --eval "db.getMongo().getDBNames()" --host exemple.com | \
我已经在 3 分片集群上针对大小为 600GB 的数据库执行了“mongodump”,并且 block 均匀分布在所有 3 个分片上。 我的 mongodump 命令是这样的: mongodump -
我正在考虑使用 mongodump 进行日常备份。 如果我总是在同一个目录上执行转储:我是否必须确保在运行 mongodump 之前清除前一天的内容?我在文档中找不到任何关于此的信息。 最佳答案 不,
我正在作为分片复制集一部分的盒子上运行以下命令。我只是想从这个特定的分片导出,我也会在另一个分片上运行相同的命令。 当我这样做时,Mongo 最多应该转储 172 万条记录,但相反,它似乎正在尝试导出
以下是文档的结构: { "_id" : ObjectId("4fccd39c9d8597a034d183b1"), "image" : "23ef514f8201320c2d7253e4bf2
我的 mac macOs High Sierra v10.13.1 上安装了 MongoDB v3.2.6,我正在尝试在升级之前进行备份。 我有一个使用默认数据库位置和默认端口在一个窗口中运行的 $
我正在为 mongo 设置备份策略,只是想知道 mongodump 在执行数据库转储之前是否会锁定数据库? 最佳答案 我在 mongo's google group 上找到了这个: Mongodump
我正在尝试从 remote ssh 运行此命令 mongodump --host mongodb1.example.net --port 27017 --username user --passwor
我们最近将一些数据移植到了 MongoDB,现在正在考虑运行每日备份,最好是从 cron 作业,并将其中一个备份恢复到辅助 mongo 数据库。 我们的系统设置如下: 服务器 1:开发 mongo 数
我试图在产品服务器上备份我的 mongo 数据库。然后恢复然后回到登台服务器。这里出现了一些问题,db 中有很多集合,我想取消一些我不想在暂存服务器上恢复的集合。 我可以通过转储暂存数据库,转储生产数
我需要能够恢复单个数据库,甚至是备份中的单个集合。由于 mongodump --oplog 仅适用于完整实例(副本集),我进行了以下过程以仅过滤我想从 oplog.bson 由 --oplog 选项生
我是一名优秀的程序员,十分优秀!