Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在数据库mysql中保存图像_Php_Mysql_Database_Image - Fatal编程技术网

Php 在数据库mysql中保存图像

Php 在数据库mysql中保存图像,php,mysql,database,image,Php,Mysql,Database,Image,我的客户已经在php+mysql中创建了一个脚本,它将图像直接保存在数据库中,每个图像都有如下url:www.example.com/image.php?id=421 你认为这是一个非常错误的解决方案?我应该重建所有的网站吗 每天大约有1000次访问,数据库中大约有600张图像。是否有充分的理由将它们存储在数据库中?这样做可能有一些正当的理由。我假设这些是客户端图像,而不是显示站点本身所需的图像(即背景图像、img标签内的内容) 至于重建场地。这可能会提高性能,但以每天1000次的点击率来说,这

我的客户已经在php+mysql中创建了一个脚本,它将图像直接保存在数据库中,每个图像都有如下url:www.example.com/image.php?id=421

你认为这是一个非常错误的解决方案?我应该重建所有的网站吗


每天大约有1000次访问,数据库中大约有600张图像。

是否有充分的理由将它们存储在数据库中?这样做可能有一些正当的理由。我假设这些是客户端图像,而不是显示站点本身所需的图像(即背景图像、img标签内的内容)


至于重建场地。这可能会提高性能,但以每天1000次的点击率来说,这可能不值得花这么多时间。假设网站的表现是可以接受的,它不会招致额外的托管费等,我会倾向于离开它,直到我重新设计的网站

如果你从评论中阅读@Gazler的链接,它实际上可以归结为几个问题:

  • 性能有问题吗?[Y]
  • 您是否存储任何附加信息,或仅存储图像本身?[仅图像]
  • 您是否计划(或希望)在未来吸引更多的用户?[Y]
  • 您的数据库大小是否受到限制?[Y]

如果您用括号中的答案回答问题,那么您的网站将图片从数据库中删除可能是件好事,否则,您可以保持原样,从而节省一些时间和/或紧张情绪。

有好的方面和坏的方面。这取决于你是谁。大约5年前,将所有图像放入数据库成为一种流行

但是,随着服务器空间越来越大,这并不是为了节省空间

负面影响是,您始终需要了解服务器端编程才能使用映像。如果我的这一发展被传递给另一个人,它可能会被证明是有问题的


据我所知,如果它能工作,它也能工作,但我看不到性能问题-这似乎很快。

图像文件就是文件,除非有充分的理由将其存储在数据库中,否则它们属于文件系统,在那里,您可以获得诸如易于备份和复制、分布在多台计算机上等好处,直接由Web服务器提供服务,以及Web服务器支持的所有上次修改日期和etag,以实现更好的性能等


如果在即将发布的版本中,图像数量预计会增加,并且预计会创建不同大小的图像(例如缩略图等),则强烈建议将图像从数据库迁移到文件系统。

仅仅因为可以这样做,并不意味着应该这样做


我总是将有关图像的元数据(文件名、位置、其他属性)存储在数据库中,并将图像外部存储在文件系统中。依我看,在SQL数据库中实际存储图像几乎没有什么好处。一旦它们在那里,就很不方便使用。

@Gazler下面的链接不起作用。在我这边显示404。