将文件另存为mysql数据库中的blob或文件路径

f4t66c6m  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(272)

我知道这些问题是经常被问到的问题之一,但是我需要你的帮助。
我正在开发一个应用程序,有些用户可以添加订单,有些用户可以执行这些订单。这些订单非常具体,因此只有有限的用户可以添加它们。
然后,为每个订单生成三个文档。每个文档的大小不超过1mb,所以我打算将它们作为blob保存在数据库中,但我不知道将来会发生什么,文档的大小可能会显著增加(例如:5mb)。我该怎么办?为什么?将它们另存为blob或另存为文件路径。
例如:将5mb文件保存为db中的blob是一种好的做法,还是从一开始就将它们保存为文件路径(如果我知道可能会发生这种情况)更好,或者将它们保存为blob,如果它们增加了,则不进行更改。
对于这个项目,我正在使用 digitalocean 服务器。

ippsafx7

ippsafx71#

mysql可以处理5mb blob。如果你使用 MEDIUMBLOB 它可以处理高达16mb的数据 LONGBLOB 它最多可以处理4gb。有关详细信息,请阅读字符串类型概述。
除此之外,将blob数据放入数据库也有相同的优点和缺点。
当然,大量的blob数据会使数据库变得更大。
将所有数据放在一起意味着单个数据库备份包含所有数据,包括“附件”。
将blob放入数据库意味着blob数据支持事务隔离、回滚、sql特权等。如果删除某些行,它也会删除这些行上的blob,但外部文件不会自动删除。

相关问题