mysql查询优化-阿里云开发者社区

开发者社区> liuer0311> 正文

mysql查询优化

简介:
+关注继续查看

 1、使用慢查询日志去发现慢查询。

2. 使用执行计划去判断查询是否正常运行。

3. 总是去测试你的查询看看是否他们运行在最佳状态下 –久而久之性能总会变化。

4. 避免在整个表上使用count(*),它可能锁住整张表。

5. 使查询保持一致以便后续相似的查询可以使用查询缓存。

6. 在适当的情形下使用GROUP BY而不是DISTINCT。

7. 在WHERE, GROUP BY和ORDER BY子句中使用有索引的列。

8. 保持索引简单,不在多个索引中包含同一个列。

9. 有时候MySQL会使用错误的索引,对于这种情况使用USE INDEX。

10. 检查使用SQL_MODE=STRICT的问题。

11. 对于记录数小于5的索引字段,在UNION的时候使用LIMIT不是是用OR.

12. 为了 避免在更新前SELECT,使用INSERT ON DUPLICATE KEY或者INSERT IGNORE ,不要用UPDATE去实现。

13. 不要使用 MAX,使用索引字段和ORDER BY子句。

14. 避免使用ORDER BY RAND().

15. LIMIT M,N实际上可以减缓查询在某些情况下,有节制地使用。

16. 在WHERE子句中使用UNION代替子查询。

17. 对于UPDATES(更新),使用 SHARE MODE(共享模式),以防止独占锁。

18. 在重新启动的MySQL,记得来温暖你的数据库,以确保您的数据在内存和查询速度快。

19. 使用DROP TABLE,CREATE TABLE DELETE FROM从表中删除所有数据。

20. 最小化的数据在查询你需要的数据,使用*消耗大量的时间。

21. 考虑持久连接,而不是多个连接,以减少开销。

22. 基准查询,包括使用服务器上的负载,有时一个简单的查询可以影响其他查询。

23. 当负载增加您的服务器上,使用SHOW PROCESSLIST查看慢的和有问题的查询。

24. 在开发环境中产生的镜像数据中 测试的所有可疑的查询。


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
SQL Server 查询性能优化 相关文章
来自: SQL Server 查询性能优化——堆表、碎片与索引(一) SQL Server 查询性能优化——堆表、碎片与索引(二) SQL Server 查询性能优化——覆盖索引(一) SQL Server 查询性能优化——覆盖索引(二) SQL Server 查询性能优化——创建索引原则...
795 0
mysql 查询结果异常分析
--- title: MySQL · mysql · mysql 查询结果异常分析 author: 张远 --- # 现象 查询条件类型变化后,查询出了不正确的结果。 ``` create table t1(id int primary key, a varchar(50) DEFAULT NULL, key idx_a(a)) engine=innodb; sho
1656 0
mysql 查询
FIND_IN_SET(str,strlist) ------->针对逗号隔开的假如字符串str 在由N 子链组成的字符串列表strlist 中,则返回值的范围在 1 到 N 之间。一个字符串列表就是一个由一些被‘,’符号分开的自链组成的字符串。
639 0
mysql查询优化explain命令详解
​mysql查询优化的方法有很多种,explain是工作当中用的比较多的一种检查方式。explain翻译即解释,就是看mysql语句的查询解释计划,从解释计划我们能很清楚的看到解释的语句有没有合理用到索引,扫描了多少行数,有没有触及全表扫描、用到临时表等影响慢查询的原因。
935 0
+关注
liuer0311
好人
277
文章
2
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载