日期:2014-05-16  浏览次数:20832 次

MySQL存储图片数据库
我用VC++做了个程序,数据库用的是MySQL.数据表其中一个字段是MEDIUMBLOB类型的,用来存放图片文件。基本上每张图片都在300K左右大小。数据库里面有4000张图片图片的时候。我搜索图片的时候那个速度啊真是比蜗牛还慢。大侠们留下点想法嘛。留想法的都给分哦。随便留下点什么嘛。

------解决方案--------------------
为什么不把图片放在文件夹里,然后数据库只存放图片链接?
有没有用INDEX索引?
------解决方案--------------------
引用我搜索图片的时候那个速度啊真是比蜗牛还慢。

------解决方案--------------------
搜索图片?什么搜索条件?
------解决方案--------------------
探讨
为什么不把图片放在文件夹里,然后数据库只存放图片链接?
有没有用INDEX索引?

------解决方案--------------------
image_name上肯定要建索引。
当图片大部分大小超过64K,建议采用本地文件,数据库中存路径来实现。
当图片数量超过100000,建议对本地文件路径进行分级整理,甚至多文件合并。
------解决方案--------------------
探讨

文件名添加了索引之后,还是用了14s才查出来一条记录啊。

------解决方案--------------------
哈哈,帮我测试了,原来数据库存图片真的不实用,我还是老实用路径存吧
------解决方案--------------------
探讨

我重新清了数据库。一个程序添加记录,一个程序读取记录,开始读取速度比较快,后来越来越慢,也就是说找到这条记录的时间比较快,读取图片数据也不至于14S啊,为什么会越来越慢呢?

------解决方案--------------------
引用SELECT 1 from image_table where image_name = '图片名称' 花费的时间也就0.02s,

------解决方案--------------------
探讨

我打算换SQL SERVER 数据库了。感觉MYSQL确实不适合存大量图片。

------解决方案--------------------
还是别想着图片存数据库了吧,这玩意不是数据库擅长干的活。
------解决方案--------------------
如果图片存储到数据库中,建议将图片转换小一些。

但如果记录比较多的话,就不建议图片存储到数据库中了。
------解决方案--------------------
探讨
还是别想着图片存数据库了吧,这玩意不是数据库擅长干的活。