欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MySQL优化相关

程序员文章站 2022-04-10 12:30:30
...

1、慢查询分析相关的优化

通过命令查看慢查询最长时间,一般默认10s,对于现代高实时系统来讲,一个查询要10秒钟是不可接受的,所以我们对慢查询先进行监控,然后才能进行优化;

show variables like 'long_query_time';

通常我们会把这个时间设置在3秒以内;

set global long_query_time=2;

查看慢查询日志记录是否开启,以及慢查询文件的路径,如果没有开启则可以开启,同时还可以设置为保存日志到table;

show variables like 'slow%'

2、查询缓存相关,在有些管理端会建议你开启Query Cache,但是如果你的系统是实时性较高的系统,则建议你不要开启,建议增加单独的缓存层。

3、分析sql语句使用索引的情况

expain出来的信息有10列,分别是id、select_type、table、type、possible_keys、key、key_len、ref、rows、Extra

概要描述:
id:选择标识符
select_type:表示查询的类型。
table:输出结果集的表
partitions:匹配的分区
type:表示表的连接类型
possible_keys:表示查询时,可能使用的索引
key:表示实际使用的索引
key_len:索引字段的长度
ref:列与索引的比较
rows:扫描出的行数(估算的行数)
filtered:按表条件过滤的行百分比
Extra:执行情况的描述和说明

下图是对explain的详细解释,关键在于type参数,其值至少要达到range级别

MySQL优化相关

在这里介绍一个分析工具Jet Profile,能把很多手动需要做的工作自动化去完成,节省时间,软件的授权费用也不是很贵,当然如果从长远的考虑来讲,公司内部应该有自己的类似的自动化分析工具;

MySQL优化相关

 

今天先讲到这里,且听下回分解。

 

相关标签: 运维 mysql