查看: 1946|回复: 7
|
百万级 mysql
[复制链接]
|
|
伺服器里的一个 table 有过百万条数据。
搜索 select id, name from table_a where name like '%abc%' 时候显得非常慢。
CPU 和 内存 RAM 都没有问题,甚至使用率低过 10%。
优化 my.cnf 会有明显的变化吗?
还是说有什么其他方法可以使到搜索变快? |
|
|
|
|
|
|
|
发表于 6-5-2009 09:45 AM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 17-5-2009 08:29 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 3-6-2009 07:28 PM
|
显示全部楼层
|
|
|
|
|
|
|
楼主 |
发表于 16-6-2009 08:20 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 14-7-2009 05:48 PM
|
显示全部楼层
原帖由 r9jason 于 6-5-2009 09:45 AM 发表
TABLE 有 indexing 吗?
当 '%abc%' 为 'abc%' 时,index才有效 |
|
|
|
|
|
|
|
发表于 29-7-2009 11:45 AM
|
显示全部楼层
当你用LIKE 的时候,整个QUERY一定会变慢,因为搜寻的方向太模糊了。
就算INDEX也不能帮助得太多。或许分段搜寻可以帮你:
先从第一百千的RECORD里面找起,
然后再第二个一百千, 虽然需要重复几次。 但是会比较快。 |
|
|
|
|
|
|
|
发表于 7-8-2009 06:43 PM
|
显示全部楼层
原帖由 cyea 于 14-7-2009 05:48 PM 发表 当 '%abc%' 为 'abc%' 时,index才有效
这家伙是内行! |
|
|
|
|
|
|
| |
本周最热论坛帖子
|