看似基本的MongoDB GridFS命令......我找不到

时间:2012-06-21 18:35:52

标签: gridfs mongodb

如何通过mongo shell将文件“上传”到MongoDB以及如何检索同一个文件?我想知道,在这样做之后,甚至是什么输出。

我认为展示我所做的将表明我的尝试是多么愚蠢。

db.fs.files.insert("foo.txt");

这似乎只是插入实际文本而不是我想要的文件......并且要检索,我发现

db.fs.files.retrieve()

不是一个功能。 ,()只是显示给我...但我想要打印实际文件的内容,无论是BINARY数据还是w / e我都不在乎,哈哈。

我很抱歉这种悲惨的尝试 - 但也许它表明我对GridFS可以做什么知之甚少 - 除了用法之外,也许有人可以为我清楚。

2 个答案:

答案 0 :(得分:8)

从命令行,您可以使用mongofiles:http://www.mongodb.org/display/DOCS/GridFS+Tools

mongofiles put yourfile.txt
cd /tmp
mongofiles get yourfile.txt

第一行将文件yourfile.txt放入mongodb。第二个在文件系统中的另一个位置检索它。

我认为不可能直接从mongo shell使用GridFS。

从python中你可以使用:

    class gridfs.GridFS(database, collection='fs')

http://api.mongodb.org/python/current/api/gridfs/index.html#gridfs.GridFS

应该使用GridFS:

http://www.mongodb.org/display/DOCS/When+to+use+GridFS

答案 1 :(得分:0)

将文件从路径

插入gridFs

mongofiles -d foorbar -l "D: \ Work \ MongoDB \ GridFS test .txt" put "GridFSTest.txt"