请教:如何提高大数据库查询的效率?
时间:2011-05-24
来源:互联网
好像记得以前看到过类似的文章,不过当时由于没接触到大型数据库,所以没有仔细研究过,现在有机会接触到了,特来请教各位。
一个email表,一年时间不到,邮件记录达到了15万条+,而且每天还在不断增加。暂且先不管这套系统的问题,我自己用PHP查询数据库,语句“select * from email where from_id="sfrost" order by sent_date desc limit 0,30",该语句的执行时间从我按F5刷新到页面显示出结果,大概时间在8秒+,这个效率是不是太低了点?
还有就是该表在phpmyadmin中看到的大小为160MB左右,多余项有30MB+,这是个什么情况?
而且这套系统的所有表中的日期字段类型都是datetime,并且后面都是设置了格式的,想请教一下为什么不把日期设为INT类型?INT类型在计算的时候不是方便多了吗?datetime和int在执行效率或存储方面有什么不同或影响没?
对于大型数据库,我还是个很初级的新手,很多东西都不是很了解,希望各位能给出一些有意义的建议,先谢谢了!
一个email表,一年时间不到,邮件记录达到了15万条+,而且每天还在不断增加。暂且先不管这套系统的问题,我自己用PHP查询数据库,语句“select * from email where from_id="sfrost" order by sent_date desc limit 0,30",该语句的执行时间从我按F5刷新到页面显示出结果,大概时间在8秒+,这个效率是不是太低了点?
还有就是该表在phpmyadmin中看到的大小为160MB左右,多余项有30MB+,这是个什么情况?
而且这套系统的所有表中的日期字段类型都是datetime,并且后面都是设置了格式的,想请教一下为什么不把日期设为INT类型?INT类型在计算的时候不是方便多了吗?datetime和int在执行效率或存储方面有什么不同或影响没?
对于大型数据库,我还是个很初级的新手,很多东西都不是很了解,希望各位能给出一些有意义的建议,先谢谢了!
作者: sfrost 发布时间: 2011-05-24
多余项有30MB+
就优化一下,phpmyadmin有直接的操作方式:优化
日期当然是int类型好啊。你说的为什么,估计得问系统开发人员了。
就优化一下,phpmyadmin有直接的操作方式:优化
日期当然是int类型好啊。你说的为什么,估计得问系统开发人员了。
作者: kuhanzhu 发布时间: 2011-05-24

我觉得INT比datetime好处有很多,比如说存储的容量,INT就11字节,而datetime我数了哈,是29个字节;另外,INT不管是在计算,还是在表现方面,都比datetime灵活多了,应该是这样的吧?
优化这个我点了,呆会去看看这命令具体作了什么。但是能告诉我查询慢这个解决办法吗?现在就是连如何下手解决这个问题的思路都没有。
而且现在有一个新的问题:数据库的编码是gbk_chinese_ci,在phpmyadmin里面能正常显示,但是通过PHP页面调出来后就乱码了,PHP页面的编码是GB2312,浏览器显示的编码也是GB2312?什么情况这是?
作者: sfrost 发布时间: 2011-05-24
查询每一年某月某日某时段之间的信息呢?
作者: ariex 发布时间: 2011-05-24
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28