可以,MongoDB 能存文件,但要看文件大小和用法。
MongoDB 单个文档最大 16MB,所以:
BinData 类型存进普通集合{
"name": "test.png",
"data": BinData(0, "base64编码的二进制")
}
✅ 简单、方便
❌ 不适合大文件
MongoDB 提供 GridFS:
fs.files 和 fs.chunks 两个集合适合:
使用示例(Mongo shell):
mongofiles put bigfile.mp4
读取:
mongofiles get bigfile.mp4
✅ 支持大文件
✅ 可流式读取
❌ 比对象存储复杂
生产环境通常:
{
"fileUrl": "https://oss.xxx.com/a.jpg"
}
✅ 性能更好
✅ 成本更低
✅ 扩展性强
| 方式 | 适合场景 |
|---|---|
| BinData | 小文件 |
| GridFS | 大文件 |
| 外部存储 + URL | 生产推荐 |
如果你是具体业务场景(比如头像、视频、日志),我可以帮你选最合适的方案。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。