gridfs 是一种在mongodb中存储大二进制文件的机制,使用gridfs的原因:

1、存储巨大的文件(视频图片)。

2、利用GRIDFS可以简化需求。

3、GRIDFS 利用已经建立起来的复制以及分片机制,故障回复和拓展都很容易。

4、gridfs 可以避免用户上传文件的系统出问题。

5、不产生此片碎片。

简介:gridfs 使用两个表格来存储数据: files 包含元数据对象,chunks包含其他的一些相关的二进制块。

为了使多个grdifs 命名为一个单一的数据库 文件与块都有一个前缀,默认为fs,包含 fs.files 和 fs.chunks。 各种其他的第三方语言可以更改前缀。

使用简介: 目录中包含mongofile 文件 进入 bin

例如:

/usr/local/mongodb/mongofiles  put  '/home/timeless/桌面/2000多个域名' -u root -p
Enter password:
connected to: 127.0.0.1
added file: { _id: ObjectId('550d5ae73c11b4f50c88c99e'), filename: "/home/timeless/桌面/2000多个域名", chunkSize: , uploadDate: new Date(), md5: "025141eb3b856cb1d05f51c8b1fac3ec", length: }
done!
//登陆MONGO
>/usr/local/mongodb/mongo -uroot -p
MongoDB shell version: 2.6.
Enter password:
connecting to: test
> show collections
fs.chunks
fs.files
person
stocks
system.indexes> db.fs.files.find()
{ "_id" : ObjectId("550d5ae73c11b4f50c88c99e"), "filename" : "/home/timeless/桌面/2000多个域名", "chunkSize" : , "uploadDate" : ISODate("2015-03-21T11:49:59.982Z"), "md5" : "025141eb3b856cb1d05f51c8b1fac3ec", "length" : }
> db.fs.chunks.find()
{ "_id" : ObjectId("550d5ae7e67b9f05743cdc35"), "files_id" : ObjectId("550d5ae73c11b4f50c88c99e"), "n" : , "data" : BinData(,"d2hvaXMgcHJpdmFjeSBwcm90ZWN0aW9uIHNlcnZpY2UgYnkgdmFsdWUtZG9tYWluICAgIOazqOWGjOS6ugo=") }
>

列出现在的文件信息

timeless@timeless-HP-Pavilion-g4-Notebook-PC:~$ /usr/local/mongodb/mongofiles list  -u root -p
Enter password:
connected to: 127.0.0.1
/home/timeless/桌面/2000多个域名
timeless@timeless-HP-Pavilion-g4-Notebook-PC:~$

下载当前文件

timeless@timeless-HP-Pavilion-g4-Notebook-PC:~$ /usr/local/mongodb/mongofiles get /home/timeless/桌面/2000多个域名  -u root -p
Enter password:
connected to: 127.0.0.1
done write to: /home/timeless/桌面/2000多个域名

删除指定文件

timeless@timeless-HP-Pavilion-g4-Notebook-PC:~$ /usr/local/mongodb/mongofiles delete  /home/timeless/桌面/2000多个域名  -u root -p
Enter password:
connected to: 127.0.0.1
done!
timeless@timeless-HP-Pavilion-g4-Notebook-PC:~$

MongoDB-GRIDFS大文件系统的更多相关文章

  1. MongoDB GridFS 存储大文件

    我们经常会遇到这样的场景:上传/下载文件. 有两种思路可以解决这个问题: (1)将文件存储在服务器的文件系统中: (2)将文件存储在数据库中. 如果我们选择(2),那么我们可以使用MongoDB Gr ...

  2. MongoDB GridFS——本质上是将一个文件分割为大小为256KB的chunks 每个chunk里会放md5标识 取文件的时候会将这些chunks合并为一个整体返回

    MongoDB GridFS GridFS 用于存储和恢复那些超过16M(BSON文件限制)的文件(如:图片.音频.视频等). GridFS 也是文件存储的一种方式,但是它是存储在MonoDB的集合中 ...

  3. MongoDB GridFS最佳应用概述

    <MongoDB GridFS最佳应用概述> 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs GridFS是MongoDB数据库之上的一个简单 ...

  4. MongoDB的学习和使用(MongoDB GridFS)

    MongoDB GridFS GridFS 用于存储和恢复那些超过16M(BSON文件限制)的文件(如:图片.音频.视频等). GridFS 也是文件存储的一种方式,但是它是存储在MonoDB的集合中 ...

  5. MongoDb GridFS的使用

    MongoDb GridFS 是MongoDB的文件存储方案,主要用于存储和恢复那些超过16M(BSON文件限制)的文件(如:图片.音频等),对大文件有着更好的性能. 要在C#中使用GridFS,首先 ...

  6. mongodb gridfs基本使用

    Mongodb GridFS图片文件存储解决方案 之前解决方案是接收图片数据后,将图片直接存储到盘阵,然后通过Apache做服务器,将图片信息存储到数据库,并且存储一个Apache的访问路径. 目前需 ...

  7. CentOS6.3搭建Nginx代理访问MongoDB GridFS图片资源

    PHP可以直接读取MongoDB GridFS中的图片并显示到页面中,但对PHP的压力就大了.偶然机会,了解到Nginx可以代理访问,实现过程如下: 1.工具准备 安装一些必要的编译工具及库,这里是直 ...

  8. HPUX 大文件系统扩容

    1.比对出新增加的磁盘 ioscan -fnuC disk    ioscan -m dsf         ioscan -fnC disk ioscan -m dsf 2.创建物理卷 pvcrea ...

  9. MongoDB GridFS 存储文件

    使用MongoDB的GridFS方式. CSDN: https://blog.csdn.net/qq_32657967/article/details/81534259官方文档: https://do ...

  10. Spring Boot使用MongoDB GridFS进行文件的操作

    1. GridFS简介 GridFS 用于存储和恢复那些超过16M(BSON文件限制)的文件(如:图片.音频.视频等),但是它是存储在MonoDB的集合中. GridFS 会将文件对象分割成多个的ch ...

随机推荐

  1. Delphi生成GUID

    Delphi生成GUID Uses ComObj; Var aGUID: string; aGUID := GetClassId; // 取得GUID

  2. QT5.7.0在win10下使用visual studio 2015编译(目标平台 xp)

    环境:win10+vs2015+QT5.7.0 目标:编译出能在windows xp上运行的QT 通过baidu和bing找出来的结果没有一个能成功运行,大部分都能编译成功,并完美解决“exe不是有效 ...

  3. Nodejs in Visual Studio Code 08.IIS

    1.开始 本文部分内容均转载自文章: http://www.hanselman.com/blog/InstallingAndRunningNodejsApplicationsWithinIISOnWi ...

  4. 《Linear Algebra and Its Applications》-chaper3-行列式-行列式初等变换

    承接上一篇文章对行列式的引入,这篇文章将进一步记录关于行列式的有关内容,包括如下的几个方面: (1)行列式3个初等变换的证明. (2)转置行列式与原行列式相等的证明. (3)定理det(AB) = d ...

  5. FZU 2113 Jason的特殊爱好

    题意: 给定区间[a,b],求将区间中所有数写在黑板上,要写的数字‘1’的次数.(1 <= a,b <= 10^8) 解法: 将题转化成f(b+1) - f(a)的形式.普通的数位DP. ...

  6. Threading Module源码概述(三)

    Threading中的Thread threading中一个关键的组件是threading.Thread. class Thread(_Verbose): __initialized = False ...

  7. MySQL ERROR 1045错误解决办法

    今天在安装MySQL数据库时,有安装过程中报ERROR 1045错误,网上查了一下,解决方法如下: 1.对于安装过程中该错选择"skip"继续向下安装,完成安装: 2.在MySQL ...

  8. keil中for循环变量递减,无法跳出循环的问题

    定义j时应注意其变量类型char,此循环当j=0时,再执行一次则keil中j=0XFF,而不是-1,所以无法跳出循环.但在vc6.0中是可以跳出循环的. 解决办法如下:不能让j的值为负数 uchar ...

  9. Android(java)学习笔记225:Activity 4 种启动模式

    1. 任务栈(task stack): 任务栈 是用来记录用户操作的行为,维护一个用户体验. 一个应用程序一般都是由多个activity组成的. 任务栈(task stack)记录存放用户开启的act ...

  10. 安卓扫码:简单的ZXing使用记录

    ZXing是Google提供的条形码.二维码等的生成.解析的库.最近工作需求去研究了一下,主要是研究怎么扫描二维码(QRCode).网上教程也不少,但大多看了不明所以,甚至看了半天都不知道解码到底从哪 ...