PHP访问mysql数据库巨慢,请求帮助!

leotonny 2008-06-04 11:01:08
服务器配置:LAMP,apache和mysql在同一服务器上

最近访问量较大,cpu一直维持在100%的水平,但前段时间一直可以正常提供服务,且访问速度都比较正常。
这几天发现在php中查询数据库非常慢,需要15秒以上,但在服务器上执行同样sql却仅需1、2秒。

SQL:
select mytag from fmain where mytag like "%4400%" and type="vedio";

fmain表结构:
+--------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| unix | varchar(255) | YES | MUL | NULL | |
| memo | longtext | YES | | NULL | |
| count | int(50) | YES | | NULL | |
| mytag | varchar(255) | YES | MUL | NULL | |
| pic | varchar(255) | YES | | NULL | |
| mymemo | longtext | YES | | NULL | |
| url | longtext | YES | | NULL | |
| code | varchar(100) | YES | MUL | NULL | |
| type | varchar(100) | YES | MUL | NULL | |
| artoo | varchar(50) | YES | MUL | NULL | |
| artor | varchar(50) | YES | MUL | NULL | |
+--------+--------------+------+-----+---------+----------------+
虽然在mytag和type上都建了索引,但这里like查询应该是没用上。

请教各位,可能是什么原因呢?是否需要优化mysql配置、或者是apache?
谢谢!
...全文
266 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wildlily980 2008-06-06
  • 打赏
  • 举报
回复
like %abc%不会使用索引,
两个原因你本机查询快而网络慢.
1\网络原因
2\查询缓存了原来的结果.
leotonny 2008-06-06
  • 打赏
  • 举报
回复
to dada20042030:
我在服务器mysql命令行执行sql查询的时候,apache也是在提供服务的,也就是说实际上是多人查询的。
为什么差距会这么大?

to ten789:
谢谢,如果不用like,有什么好的变通方法可以高效并使用索引呢?
ten789 2008-06-05
  • 打赏
  • 举报
回复
like 不使用索引 效率奇低
剑心永远OK 2008-06-04
  • 打赏
  • 举报
回复
另外你一个人查询的话,肯定是快的。。但你要考虑到多人查询的问题。
剑心永远OK 2008-06-04
  • 打赏
  • 举报
回复
like "%4400%"
改用子查询再用=看看。
justicesun 2008-06-04
  • 打赏
  • 举报
回复
首页上的..五种提高 SQL 性能的方法
http://topic.csdn.net/u/20080509/10/C9BEE345-3F57-4632-A84D-1673B1E96BF8.html



这一般都是sql性能问题

21,893

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧