標籤:
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 -pEnter password: connected to: 127.0.0.1added file: { _id: ObjectId(‘550d5ae73c11b4f50c88c99e‘), filename: "/home/timeless/案頭/2000多個網域名稱", chunkSize: 261120, uploadDate: new Date(1426938599982), md5: "025141eb3b856cb1d05f51c8b1fac3ec", length: 62 }done!
//登陸MONGO >/usr/local/mongodb/mongo -uroot -pMongoDB shell version: 2.6.6Enter password: connecting to: test> show collectionsfs.chunksfs.filespersonstockssystem.indexes> db.fs.files.find(){ "_id" : ObjectId("550d5ae73c11b4f50c88c99e"), "filename" : "/home/timeless/案頭/2000多個網域名稱", "chunkSize" : 261120, "uploadDate" : ISODate("2015-03-21T11:49:59.982Z"), "md5" : "025141eb3b856cb1d05f51c8b1fac3ec", "length" : 62 }> db.fs.chunks.find(){ "_id" : ObjectId("550d5ae7e67b9f05743cdc35"), "files_id" : ObjectId("550d5ae73c11b4f50c88c99e"), "n" : 0, "data" : BinData(0,"d2hvaXMgcHJpdmFjeSBwcm90ZWN0aW9uIHNlcnZpY2UgYnkgdmFsdWUtZG9tYWluICAgIOazqOWGjOS6ugo=") }>
列出現在的檔案資訊
[email protected]:~$ /usr/local/mongodb/mongofiles list -u root -pEnter password: connected to: 127.0.0.1/home/timeless/案頭/2000多個網域名稱 62[email protected]-HP-Pavilion-g4-Notebook-PC:~$
下載當前檔案
[email protected]:~$ /usr/local/mongodb/mongofiles get /home/timeless/案頭/2000多個網域名稱 -u root -pEnter password: connected to: 127.0.0.1done write to: /home/timeless/案頭/2000多個網域名稱
刪除指定檔案
[email protected]:~$ /usr/local/mongodb/mongofiles delete /home/timeless/案頭/2000多個網域名稱 -u root -pEnter password: connected to: 127.0.0.1done![email protected]-HP-Pavilion-g4-Notebook-PC:~$
MongoDB-GRIDFS大檔案系統