mysql,有一张表里面已经有几千万条数据了,网页访问时极其缓慢,如何提高检索速度?(mysql服务查询慢怎么优化)

2023-12-26 31阅读

mysql,有一张表里面已经有几千万条数据了,网页访问时极其缓慢,如何提高检索速度?

一般查询的话应该有常用的语句的。

mysql,有一张表里面已经有几千万条数据了,网页访问时极其缓慢,如何提高检索速度?(mysql服务查询慢怎么优化)(图片来源网络,侵删)

比如常见查询为:

select * from factdata where user='a' and module='b' and dtime between '2012-11-01 00:10:00' and '2012-11-01 00:11:10';

那么你这时候需要在factdata表上建立(user,module,dtime)的联合索引。

mysql,有一张表里面已经有几千万条数据了,网页访问时极其缓慢,如何提高检索速度?(mysql服务查询慢怎么优化)(图片来源网络,侵删)

alter table factdata add index i_merge(`user`,`module`,`dtime`);

你可以执行

explain select * from factdata where user='a' and module='b' and dtime between '2012-11-01 00:10:00' and '2012-11-01 00:11:10';

mysql,有一张表里面已经有几千万条数据了,网页访问时极其缓慢,如何提高检索速度?(mysql服务查询慢怎么优化)(图片来源网络,侵删)

查看建立索引前面的返回的结果。

mysqlsum查询速度很慢?

这个问题和设计有关系,简单的sql优化提升不了多少,但是这个sql还是可以进一步优化的

利用索引,用unionall代替in,如select*fromtabwhereidin(1,2),可写成select*fromtabwhereid=1unionall

select*fromtabwhereid=2

但是上面的优化起不到根本效果,如果100万1000万数据怎么办,难道每次都要全部查出来嘛,那是不可能的,而且你的页面也不能全部都展示出来!所有需要换个思路,如,将一个会员的订单记录查询出来,然后通过程序(java或者存储过程)算出时间差,按照上面再计算下一个会员;

如何开启MySQL慢查询日志?

shell>mysql -u root -p #输入密码 mysql>show variables like "%slow%"; #检查下面几条参数 slow_query_log #这个是表示的slow log有没开 slow_query_log_file #这个是slow log的地址 #然后直接vim 那个文件就可以了

mysql使用groupby和order导致速度很慢,请问该怎样优化?

1、使用用索引 注意有些情况下不能够使用索引来提高Order By语句的查询性能。

这里需要注意的是,并不是任何情况下都能够通过使用索引来提高Order Byz子句的查询效率。

如对不同的关键字使用这个语句、混合使用ASC模式和DESC模式、用于查询条件的

到此,以上就是小编对于mysql查询慢的优化方案的问题就介绍到这了,希望这4点解答对大家有用。

文章版权声明:除非注明,否则均为游侠云资讯原创文章,转载或复制请以超链接形式并注明出处。

目录[+]