MySQL性能优化,通过SHOW STATUS 语句查询一些MySQL数据库性能参数
SHOW STATUS LIKE 'value';
value 表示要查询的参数值:
Connections: 连接mysql服务器的次数
Uptime:Mysql服务器的上线时间
Slow_queries:慢查询的次数
Com_select:查询操作的次数
Com_insert:插入操作的次数
Com_update:更新操作的次数
Com_delete:删除操作的次数
mysql> SHOW STATUS LIKE 'Connections'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | Connections | 33 | +---------------+-------+ 1 row in set (0.00 sec)
慢查询次数参数可以结合慢查询日志,找出慢查询语句,然后针对查询语句进行表结构优化或查询语句优化。
分析查询:
EXPLAIN [EXTENDED] SELECT select_options;
mysql> EXPLAIN SELECT * FROM demo; +----+-------------+-------+------+---------------+------+---------+------+------+-------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+-------+------+---------------+------+---------+------+------+-------+ | 1 | SIMPLE | demo | ALL | NULL | NULL | NULL | NULL | 1 | | +----+-------------+-------+------+---------------+------+---------+------+------+-------+ 1 row in set (0.01 sec)
id:SELECT 识别符,是SELECT查询序列号
select_type:表示SELECT语句的类型
table:表示查询的表
type:表示表的连接类型。
possible_keys:指出mysql能使用哪个索引在该表中找到行。
key:表示查询实际使用到的索引。
key_len:表示mysql选择的索引字段按字节计算的长度
ref:表示使用哪个列或常数与索引一起来查询记录。
rows:显示mysql在表中进行查询时必须检查的行数
Extra:表示mysql在处理查询时的详细信息。
DESCRIBE SELECT select_options;
DESCRIBE 可以缩写DESC