问题标签 [mongodump]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
652 浏览

mongodb - mongodump 显示“跳过集合:my_db.my_collection.$_id_”是否正常?

我试图 mongodump 我的数据库:

但是每个集合都有有趣的输出(很冗长),有一些有趣的行:

这是什么意思:skipping collection: my_db.my_collection.$_id_,为什么是id字段?这是否意味着某些数据没有被转储,或者备份中没有 ID(所以在恢复数据库时,将分配新的 ID?

奇怪的是mongo show dbs返回的大小my_db约为 1Gb,但.bson文件的整体大小只有 150Mb?

0 投票
1 回答
163 浏览

mongodb - mongorestores 在不同的机器上表现不同?

我执行以下操作:

在我的本地机器上,它工作正常。在我在亚马逊上的开发机器上,我从相同的命令、相同的数据库转储和相同版本的 mongodb(2.0.4)获得此输出:

导入的数据不完整。我做错了什么?

0 投票
0 回答
551 浏览

mongodb - MongoDB时间点恢复

我正在尝试执行时间点 oplog 恢复,系统告诉我正在运行的系统上的 oplog 比我尝试从中恢复和退出的 oplog 更新。

我正在使用 mongo 2.4

0 投票
1 回答
2650 浏览

mongodb - mongodb mongodump mongorestore

我已经针对大小为 600GB 的数据库在 3 个分片集群上执行了“mongodump”,并且块平均分布在所有 3 个分片上。

我的 mongodump 命令是这样的:

mongodump --db mydb123 --authenticationDatabase admin --journal -u root -p password123 -o mydb123

块几乎均匀地分布在所有 3 个分片中。++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++++

然后我将转储文件移动到一个新集群并在新的 2-shard 集群上执行此转储文件的“mongorestore”。这个数据库的大小现在只有 80 GB。我想这是意料之中的(紧凑的行动)。但这是我的问题:在新的 2-shard 集群上,执行命令“sh.status()”没有显示该数据库的任何 CHUNKS。我的 mongorestore 命令是这样的:

mongorestore -u root -p newpass123 --authenticationDatabase admin --verbose /data/db/backups/new_dir/mydumpfile

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ SH.STATUS() 的实际输出如下所示:

mongos> sh.status() --- 分片状态 --- 分片版本:{ "_id" : 1, "version" : 3, "minCompatibleVersion" : 3, "currentVersion" : 4, "clusterId" : ObjectId(" 52efaaa0a83668acafc3bcb0") } 分片:{“_id”:“sh1”,“主机”:“sh1/hfdvmprmongodb1:27000,hfdvmprmongodb2:27000”} {“_id”:“sh2”,“主机”:“sh2/hfdvmprmongodb1:27001 ,hfdvmprmongodb2:27001" } 数据库:{“_id”:“admin”,“partitioned”:false,“primary”:“config”} {“_id”:“test”,“partitioned”:false,“primary”: “sh1”}{“_id”:“定价”,“分区”:true,“primary”:“sh2”} {“_id”:“mokshapoc”,“分区”:true,“primary”:“sh1”}

mongos> isBalancerRunning() Tue Feb 4 11:09:39.242 ReferenceError: isBalancerRunning is not defined mongos> sh.isBalancerRunning() true

++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++ 所以,我已经完全完成了 mongorestore 并且没有显示 80 GB 数据库的 CHUNKS(在执行 mongodump 时曾经是 600 GB 数据库)

我对没有看到任何块的事实感到非常困惑。(预计尺寸会更小,而且要小得多)

两个集群上的版本相同:MongoDB shell 版本:2.4.6

谢谢你,vr

0 投票
1 回答
1141 浏览

python - mongodump 然后删除:不完全相同的记录数

我正在使用结构脚本将数据从远程 mongodb 服务器转储到我的本地计算机,然后我希望从远程计算机中删除该数据。我现在分两步进行,虽然我可以理解可能还有更优雅的方法存在几天,但我想继续这样。这是我作为 fab 任务运行的 python 函数的片段

如果此脚本在今天(2014 年 2 月 14 日,IST)执行,那么它会搜索所有“fetched_date”(具有日期和时间的普通 ISODate 对象)小于等于 2014-01-14 00:00 的文档:00。这个脚本执行得很好。


问题


执行此脚本时,我们可以看到它将 X 个对象(文档)转储到我的本地计算机中。但是当我们在远程 mongo shell 中运行这个查询时

这给了我们不同数量的记录。这比 X 多。这意味着我们不能删除与该查询匹配的所有记录,因为其中一些记录没有被转储到我的本地计算机中。我不明白这怎么可能,因为我以毫秒为单位转换相同的日期,然后在 mongodump 运行查询。

有人可以帮帮我吗?

如果您需要更多信息,请告诉我。谢谢。

0 投票
2 回答
14325 浏览

mongodb - 带有副本集的 Mongodump:如何强制辅助?

我的 MongoDB 副本集备份有一个奇怪的问题。我有 2 台服务器(一台主服务器和一台辅助服务器),每 2 小时运行一次备份任务。

我用这个:mongodump.exe --db MyBase --out "d:\Backups"

但是,当我运行此备份时,我的客户端应用程序 (c#) 会抛出如下错误:

MongoDB.Driver.MongoConnectionException:无法连接到与读取首选项 Primary 匹配的副本集的成员

我认为 mongodump 对客户端应用程序没有任何影响。所以,就这么说吧。

我只想在辅助服务器上强制执行我的备份操作。我该如何进行?运行的命令是什么?

感谢您的帮助。

0 投票
3 回答
2610 浏览

mongodb - 我在 mongodb 中的数据库是哪个?

参考上一个问题的下一个问题mongodb 在哪里存储数据库在 ubuntu 中?

在这里,我可以看到ihtx.0 ihtx.1 ihtx.ns三个同名文件。我通常在 mongo shell 中看到的 mydatabase 是哪一个?我应该倾倒哪一个?

尝试了每个,得到以下错误:

0 投票
1 回答
1582 浏览

mongodb - MongoDB:在删除集合之前,如何确保 mongodump 在归档过程中成功?

我们的应用程序记录了大量数据,因此我们必须每周归档数据并将其从生产机器中移出一次。现在这是一个手动过程,但我正在自动化它。基本上,我使用“mongodump”并压缩输出,然后将其移动到云中并删除生产机器上的记录数据。

我的问题是如何在删除数据库中的所有文档之前确保 mongodump 成功?下面的基本伪代码:

我浏览了文档,但似乎找不到任何东西。有没有更好的方法来完成我正在尝试做的不使用 mongodump 的事情?谢谢。它

0 投票
2 回答
1190 浏览

mongodb - 如何验证由 mongodump 操作产生的文件的完整性?

根据我所做的研究,mongodump 没有内置检查来验证 mongodump 操作的完整性;至少,对用户来说没有什么明显的。我可能错了。如果我是,请通知我。否则,我确定我不是唯一一个希望验证他们的 mongodump 操作复制数据而没有任何损坏或丢失的人。其他人用来确保其 mongodump 文件完整性的各种方法是什么?如果在分片集群上执行此操作的方法本质上不同,请回答如何在单个 MongoDB 实例和分片实例上执行此操作。

0 投票
1 回答
2107 浏览

mongodb - MongoDB,mongorestore:“只能在完全恢复时重放 oplog”

我在恢复转储和在 MongoDB 上重放 oplog 时遇到了一些麻烦。

我必须重播 oplog 到某个时间点,因此发出以下命令:

但 mongorestore 回复“只能在完全恢复时重播 oplog”。

查看源代码,当用户未指定 --db 选项时,似乎会显示此错误消息,但我确实这样做了。

你知道还有什么原因吗?