Json MongoDB-db在mongoimport之后不显示任何集合
我实际上在探索MongoDB和mapReduce,但我遇到了一个问题。 mongodb的安装是成功的。 之后,我尝试导入一个json文件,在terminalI中调用mongo之前键入以下2个命令。我正在使用Ubuntu12.04 LTS:Json MongoDB-db在mongoimport之后不显示任何集合,json,mongodb,collections,Json,Mongodb,Collections,我实际上在探索MongoDB和mapReduce,但我遇到了一个问题。 mongodb的安装是成功的。 之后,我尝试导入一个json文件,在terminalI中调用mongo之前键入以下2个命令。我正在使用Ubuntu12.04 LTS: $ wget http://media.mongodb.org/zips.json $ mongoimport --db mapreduce --collection zips --file zips.json 然后我调用命令: $ mongo
$ wget http://media.mongodb.org/zips.json
$ mongoimport --db mapreduce --collection zips --file zips.json
然后我调用命令:
$ mongo
我收到这些警告:
MongoDB shell version: 2.6.5
connecting to: test
Server has startup warnings:
2014-11-04T20:15:12.280+0100 [initandlisten]
2014-11-04T20:15:12.280+0100 [initandlisten] ** NOTE: This is a 32 bit MongoDB binary.
2014-11-04T20:15:12.280+0100 [initandlisten] ** 32 bit builds are limited to less than 2GB of data (or less with --journal).
2014-11-04T20:15:12.280+0100 [initandlisten] ** Note that journaling defaults to off for 32 bit and is currently off.
2014-11-04T20:15:12.280+0100 [initandlisten] ** See http://dochub.mongodb.org/core/32bit
2014-11-04T20:15:12.280+0100 [initandlisten]
现在,当我想显示集合时,我通常会键入:
展示收藏
但它没有显示任何收藏。像这样:
展示收藏
>
当我打字的时候
放映星展
我上了候机楼:
admin (empty)
local 0.078GB
mapreduce 0.078GB
test (empty)
zips (empty)
这意味着数据库zips是空的,但是当我打开它时,里面有很多文档
谁能帮我一下吗?
提前谢谢
mongoimport --db mapreduce --collection zips --file zips.json
此命令将数据从文件zips.json导入mapreduce数据库中名为zips的集合
现在,当我想显示集合时,我通常会键入:show collections,但它不显示任何集合。像这样:
默认情况下,当您打开新的mongo客户端时,它将使用测试数据库。i、 e未切换数据库的所有操作将在测试数据库上执行
由于mongoimport命令在mapreduce数据库而不是默认测试数据库中执行操作,因此在测试数据库中看不到集合
当您显示dbs时,它会列出所有存在的数据库。您可以在那里看到新的mapreduce数据库。这里看到的ZIP是您可能意外创建的数据库,而不是您将数据导入其中的集合
这意味着数据库zips是空的,但是当我打开它时,里面有很多文档
是的,名为zips的数据库为空。你要找的是拉链系列。
因此,需要发出命令:use mapreduce;,首先切换到mapreduce数据库。在那里,当您发布show collections时,可以看到包含导入数据的zips集合
此命令将数据从文件zips.json导入mapreduce数据库中名为zips的集合
现在,当我想显示集合时,我通常会键入:show collections,但它不显示任何集合。像这样:
默认情况下,当您打开新的mongo客户端时,它将使用测试数据库。i、 e未切换数据库的所有操作将在测试数据库上执行
由于mongoimport命令在mapreduce数据库而不是默认测试数据库中执行操作,因此在测试数据库中看不到集合
当您显示dbs时,它会列出所有存在的数据库。您可以在那里看到新的mapreduce数据库。这里看到的ZIP是您可能意外创建的数据库,而不是您将数据导入其中的集合
这意味着数据库zips是空的,但是当我打开它时,里面有很多文档
是的,名为zips的数据库为空。你要找的是拉链系列。
因此,需要发出命令:use mapreduce;,首先切换到mapreduce数据库。在那里,当您发布show collections时,您可以看到包含导入数据的zips集合。这是@Batshray的一个很好的解释。我想对@Batshray做一点补充 您已按如下方式尝试导入: 因此,您的.json文件将导入mapreduce数据库中的zips集合中。要查看导入的数据,请发出以下命令:
>show dbs
>use mapreduce
>show collections
>db.zips.find()
现在导入的数据将出现在zipscollection中
为什么要发出这些警告
32位MongoDB进程的数据限制在2GB左右。这是因为MongoDB存储引擎使用内存映射文件来提高性能。因此它不可能过多地使用日志。此外,默认情况下,日志记录将在32位关闭。不要在MongoDB中禁用日志记录。永远不要在产品中使用32位。要了解更多关于日志记录的信息,请查看我的博客文章。这是作者的一个很好的解释@蝙蝠尖叫。我想为@BatScream添加更多内容 您已按如下方式尝试导入: 因此,您的.json文件将导入mapreduce数据库中的zips集合中。要查看导入的数据,请发出以下命令:
>show dbs
>use mapreduce
>show collections
>db.zips.find()
现在导入的数据将出现在zipscollection中
为什么要发出这些警告
32位MongoDB进程的数据限制在2GB左右。这是因为MongoDB存储引擎使用内存映射文件来提高性能。因此它不可能过多地使用日志。此外,默认情况下,日志记录将以32位关闭。不要在MongoDB中禁用日志记录。决不要将32位用于制作。要了解更多日志记录,请查看我的博客帖子。非常感谢@BatScream。经过多次尝试,我也意识到更改数据库是显而易见的,因为导入引用了数据库mapreduce a
不要拉拉链。也谢谢你的解释。我希望这也能对其他人有所帮助。非常感谢蝙蝠咆哮。经过多次尝试,我也意识到更改数据库是显而易见的,因为导入是指数据库mapreduce,而不是zips。也谢谢你的解释。我希望这也能对其他人有所帮助。谢谢