这个问题已经在这里有了答案 :
8年前关闭。
可能的重复项: MySQL中的图像在MySQL中 存储图像
我正在尝试建立一个网站,供用户在注册时上传其图像。我希望对于每个图像,都应该有一个用PHP创建的缩略图(这并不困难)。我想将拇指(因为它们很小)保存在数据库中,并且使用MySQL。(我不想将拇指另存为驱动器上的物理文件。) MySQL是否允许保存和检索图像数据,我该如何处理?如果它不支持图像数据,那么有没有免费的数据库?如果可以提供链接,我将很高兴。 谢谢。
是的,您可以将图像存储在数据库中,但是我不建议这样做,这也不是普遍做法。
通常的做法是将映像存储在文件系统上的目录中,并将对映像的引用存储在数据库中。例如,图像的路径,图像名称等。或者,您甚至可以将图像存储在内容分发网络(CDN)上或跨越一定物理区域的众多主机上,并在数据库中存储访问这些资源的引用。
图像可能会变得很大,大于1MB。因此,将图像存储在数据库中可能会对数据库以及数据库与Web服务器之间的网络(如果它们位于不同的主机上)造成不必要的负载。
我曾在拥有40万以上员工的初创公司,中型公司和大型技术公司工作。在我13年的专业经验中,我从未见过有人将图像存储在数据库中。我说这是为了支持这种说法,这是不常见的做法。