1.使用mongodb存储大文件
mongofiles -d dbname put file
此时 dbname数据库里有两个文件:
fs.chunks
{ "_id" : ObjectId("5b83523869d72e0ac439e40f"), "files_id" : ObjectId("5b83523769d72e0ac439e3fb"),
"n" : 19, "data" : BinData(0,"NYrm/hlDzSYsY83kbXx/Ha0fL
fs.files
{ "_id" : ObjectId("5b83523769d72e0ac439e3fb"), "chunkSize" : 261120,
"uploadDate" : ISODate("2018-08-27T01:22:16.186Z"), "length" : 261747322,
"md5" : "0eac0dbfb6f105721a860189ebaee9e2", "filename" : "AID18.tar.gz" }
2.将数据库中的文件下载到本地
from pymongo import MongoClient
import gridfs
conn = MongoClient('localhost',27017)
db = conn.db_grid
fs = gridfs.GridFS(db)
cursor = fs.find()
for file in cursor:
if file.filename = 'AI.tar.gz':
with open(file.filename,'wb') as f:
while True:
data = file.read()
if not data:
break
f.write(data)
conn.close()