8

我得到了一个 bson 文件的数据转储。在 mongo db 中,存在数据库和集合。这些是对数据库中每个集合的更新。因此,在给定的目录中,每个集合大约有 30 个 bson 文件。

在命令行中,我使用的是 ubuntu,如何追加和加载?Mongo 在我的本地主机上,没有用户名或密码。

谢谢

4

6 回答 6

5

我花了一段时间来解决这个错误的借口。最后我去了我的dump文件夹外的目录,并做了以下......

对于完整的数据库还原:

mongorestore --drop dump/mydb

请注意,该操作将为它创建的文件夹mongodump的每个数据库创建单独的文件夹,因此您需要指定完整的相对路径,如上所述。dump

对于单个集合:

mongorestore --drop -d mydb -c mycollection dump/mydb/mycollection.bson

于 2013-12-31T21:01:45.040 回答
3

通常的语法是:

mongorestore -d dbname -c collectionname dir/file.bson
于 2013-09-25T13:35:27.323 回答
2

您在寻找 mongorestore 吗?http://www.mongodb.org/display/DOCS/Import+Export+Tools#ImportExportTools-mongorestore

于 2012-08-05T16:01:09.457 回答
1
  • 导入 Bson

    • mongorestore -d dbname -c 集合名 dir/file.bson
  • 导入 JSON

    • mongoimport --collection NAME --file NAME。

http://docs.mongodb.org/v2.2/reference/mongoimport/

于 2013-10-30T07:16:29.070 回答
0

由于 Mongo restore 不会更新当前记录,因此这不是一个好的选择。

Mongorestore 仅附加新记录,如下所述:

mongorestore 只是插入要恢复的数据;如果存在现有数据(例如具有相同_id),则不会被替换。

您可能希望用您选择的语言构建一个 BSON 解析器,并制作一个比 mongorestore 更复杂的工具,因为 mongorestore 仅旨在“恢复”(顾名思义)数据库/集合,您需要编写一些东西做你想做的事更复杂,这在很大程度上取决于你的服务器端语言。

编辑

这实际上用 mongoexport 和 mongoimport 做得更好:

http://www.mongodb.org/display/DOCS/Import+Export+Tools#ImportExportTools-mongoimport

使用 mongoexport,您可以导出 JSON 文件并为其提供命令行执行 upserts。所以我会亲自回到提供这个文件的人那里,告诉他们你实际上想要一个 mongo 导出文件。

于 2012-08-05T16:21:19.973 回答
0

1)在CMD中进入“dump”文件夹所在的目录。

2) 运行mongorestore命令。

于 2015-03-22T15:51:40.350 回答