在MySQL数据库中存储图像

在MySQL数据库中存储图像,mysql,image,Mysql,Image,我想将小的(50x50)图像存储为化身图像,因此每个用户一个。用户上传图像,PHP将其大小调整/裁剪为50x50。我知道如何将图像作为BLOB存储在数据库中,我知道另一种方法是只将URL存储在DB中,然后将图像文件复制到服务器。我只是想知道哪一个是最好的做法?我认为用户数量将在1-200之间变化。因此,小数量的小图像,哪种存储方法是最好的?我认为,您可以选择第二种方法,将图像url存储在数据库中并从服务器检索图像,这将很容易维护图像和任何其他图像重定大小操作存储url是最佳做法,在数据库中存储图

我想将小的(50x50)图像存储为化身图像,因此每个用户一个。用户上传图像,PHP将其大小调整/裁剪为50x50。我知道如何将图像作为BLOB存储在数据库中,我知道另一种方法是只将URL存储在DB中,然后将图像文件复制到服务器。我只是想知道哪一个是最好的做法?我认为用户数量将在1-200之间变化。因此,小数量的小图像,哪种存储方法是最好的?

我认为,您可以选择第二种方法,将图像url存储在数据库中并从服务器检索图像,这将很容易维护图像和任何其他图像重定大小操作

存储url是最佳做法,在数据库中存储图像可能会很快导致数据库速度变慢。如果许多用户同时尝试存储图像,则很可能会破坏您的数据库。

我认为这取决于:它们是否表示应用程序中的文件或数据

如果从来没有任何文件操作或类似的东西对你的图像文件是必要的,我会把它们看作是数据,并将它们作为BLUB存储在数据库中。好处:

  • 没有可能数千个文件的传播
  • 如果要检索数据,请使用诸如索引之类的数据库功能
  • 数据库备份还可以动态备份图像
  • 无需在应用程序中实现文件操作功能

在这种情况下,您必须存储正在上载到服务器的图像的url。这对于图像的检索、重新调整大小和操作是有效的。这应该是最佳实践

请阅读: