Mysql 常用调优命令总结

在工作中,经常会碰到Mysql性能问题,本文记录了调优时会用到的一些命令:

1. show full processlistG: 显示Mysql服务器正在执行的线程。有root权限的用户可以显示所有的线程,默认显示当前用户的执行线程。show processlistG 默认显示10条记录。G 竖列显示结果。

Time:显示这条命令的执行时间。如果要确认性能问题,需要多执行几次Info显示的SQL。

Info: 通常查询SQL

2. 生成执行计划:explain select * from <table> where id = <id>G

重点看下key和rows.

key :使用的索引,任何key为null,表示没有足够调优的SQL查询, 查询会全表扫描。

rows:表示找到结果需要读取的数据量。

type:All也是一个潜在的性能问题的标识,表示存在全表扫描。

3. 添加索引有很多优点,包括性能优化。在添加索引前,要做两项检查:

    3.1 验证表结构: show create table <table name>G

    3.2  验证表的数据量:show table status like '<table name>'G , 可以通过data-length和rows来查看表的大小

4. show indexes from <table name>G:查看索引的信息,包括索引的类型和当前报告的索引的基数

5. show variables:显示系统变量

show session variables like 'tmp_table_size'

http://effectivemysql.com/downloads/words

原文地址:https://www.cnblogs.com/lzmrex/p/9359698.html