将图像存储在数据库中:直接还是 Base64?
传统上,存储在数据库中的图像会转换为 Base64 数据,从而将其大小增加33%。但是,也可以将图像直接存储为 BLOB。虽然后一种方法节省了存储空间,但由于以下几个原因,它尚未得到广泛采用:
-
不常见的做法:将图像直接存储在数据库中不是标准做法,因为它被认为是存储资源的低效使用。
-
增加处理开销:将图像转换为与存储原始二进制数据相比,base64 增加了处理开销。
-
增加的存储要求:以 Base64 格式存储图像比将其存储为原始数据消耗更多的存储空间。
-
性能问题:访问存储为base64数据的图像可能比直接检索原始二进制文件慢
-
兼容性问题:并非所有数据库都支持存储大型二进制对象,将图像转换为 Base64 可确保跨不同数据库系统的兼容性。
-
旧版支持: 许多现有的应用程序和系统对图像使用base64编码,因此很难过渡到直接
虽然直接存储图像可以在存储空间优化方面提供优势,但上述缺点导致在 MySQL 数据库中存储图像的 Base64 编码的持续流行。
以上是我应该将图像直接存储在数据库中还是使用 Base64 编码?的详细内容。更多信息请关注PHP中文网其他相关文章!