1.优化考虑
sql及索引优化、表结构、系统配置、硬件
2.SQL优化
开启慢查询日志:slow_query_log log_queries_not_using_indexes long_query_time
使用mysqldumpslow或pt-query-digest
找到具体SQL后,使用执行计划explain进行分析
SQL优化: count max等函数的优化,子查询用join优化,group by优化,limit查询优化,具体问题具体分析,增加些过滤条件
3.索引的优化
哪些列建索引: where, group by, order by, on
索引列越小越好,联合索引需要考虑列的位置(离散度大的放在前面)
过多索引会影响效率,通过information_schema数据库或用pt-duplcate-key-checker找出重复及冗余索引
变更后用不到的索引就删除: pt-index-usage slow.log
4.数据库结构优化
选择最合适的数据类型
小、简、not null、无text
范式化:一般遵循第三范式(无传递式的依赖,冗余、删除异常、更新异常、插入异常)
反范式化:适当增加冗余,空间换取时间
表的垂直拆分:根据业务情况,很少用的、数据大的(小的)等
表的水平拆分:id date等,跨分区表的查询以及统计或报表的处理挑战
5.系统的优化
操作系统优化:网络连接优化、文件数的限制、关闭防火墙、磁盘及分区
MySQL配置优化:MySQL的参数(缓冲池、日志缓冲池、变更刷新磁盘(0,1,2)、读写IO线程数、共享表空间、刷新统计信息),使用percona工具分析
6.硬件优化
CPU、IO等,考虑HA、读写分离等。
7.count(col)和count(*)
在有无索引的情况下和在该列能为NULL的
列越靠后,count(col)越慢
8.列最好不允许为空
相关推荐
mysql慢可能是配置不对,阅读一下这个可能对你有帮助 ...对于Discuz!... 下面我们了解一下MySQL优化的一些基础,MySQL的优化我分为两个部分,一是服务器物理硬件的优化,二是MySQL自身(my.cnf)的优化。
mysql优化
mysql优化及基础面试题。 什么是慢查询 慢查询日志,顾名思义,就是查询慢的日志,是指 mysql 记录所有执行超过 long_query_time 参数设定的时间阈值的 SQL 语句的日志。该日志能为 SQL 语句的优化带来很好的帮助...
为什么要开发这个MySQL 优化工具(Why) “一键优化”功能,可以优化本地/远程需要优化的机器,将繁琐的优化工作“傻瓜”式操作 根据您的业务需求Step By Step优化的MySQL服务器参数,起到指引的作用,简化用户...
MySql优化
MySQL优化
21. MYSQL扩展/优化-提供更快的速度 22. MYSQL何时使用索引 23. MYSQL何时不使用索引 24. 学会使用EXPLAIN 25. 学会使用SHOW PROCESSLIST 26. 如何知晓MYSQL解决一条查询 27. MYSQL非常不错 28. MYSQL应避免...
我的mysql优化日记 我的mysql优化日记 我的mysql优化日记 我的mysql优化日记
详细介绍了mysql的优化方法,资料包里包含word文档,ppt和图片
mysql优化技巧mysql优化技巧mysql优化技巧mysql优化技巧mysql优化技巧mysql优化技巧mysql优化技巧mysql优化技巧mysql优化技巧mysql优化技巧mysql优化技巧mysql优化技巧mysql优化技巧mysql优化技巧mysql优化技巧mysql...
mysql优化从以下几个方面介绍 mysql的架构 索引优化分析 查询截取分析 mysql锁机制 主从复制
教程名称:大型门户网站核心技术-Mysql优化 课程目录:【】Mysql优化 资料【】Mysql优化01关键技术【】Mysql优化02表的设计【】Mysql优化03慢查询(一)【】Mysql优化04慢查询(二)【】Mysql优化05慢查询(三)【】Mysql...
Mysql优化方法介绍.ppt
windows平台mysql优化配置
MySql优化——MySql 优化.doc
MySql优化.pdf
深入浅出的mysql优化大全!网易数据库专家写的
经典案例实例分析,通过演示教你掌握基本的mysql优化
非常实用的mysql优化规则,问题:,若是能够恰当的使用sql规则,便能极大提高系统的效率。那么如何实现sql语句和表的优化呢?