Mongodb并将bson文件插入数据库

时间:2012-08-05 15:50:32

标签: mongodb

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

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

由于

6 个答案:

答案 0 :(得分:5)

我花了一些时间来解决这个错误的借口。最后,我进入了dump文件夹之外的目录,并执行了以下操作...

对于完整的数据库恢复:

mongorestore --drop dump/mydb

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

对于单个集合:

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

答案 1 :(得分:3)

通常的语法是:

mongorestore -d dbname -c collectionname dir/file.bson

答案 2 :(得分:2)

答案 3 :(得分:1)

  • 导入Bson

    • mongorestore -d dbname -c collectionname dir / file.bson
  • 导入Json

    • mongoimport --collection NAME --file NAME。

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

答案 4 :(得分:0)

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

Mongorestore只会附加新记录:

  

mongorestore只是插入要恢复的数据;如果存在   数据(比如使用相同的_id)是不会被替换的。

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

修改

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

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

使用mongoexport,您可以导出JSON文件并为其命令行执行upserts。所以我个人会回复给出这个文件的人并告诉他们你真的想要一个mongo导出文件。

答案 5 :(得分:0)

1)转到" dump"的目录。文件夹位于CMD。

2)运行 mongorestore 命令。