mysql之性能指标查询
MySQL中使用show status语句查询MySQL的性能参数
语法:
show status like [statement];
常用statement说明:
CONNECTIONS 显示连接服务器的次数
uptime MySQL服务器上线的时间
slow_queries 慢查询的次数
com_select 查询操作的次数
com_insert 插入操作的次数
com_update 更新操作的次数
com_delete 删除操作的次数
# 查询连接MySQL服务器的次数
show status like 'connections';
# 查询MySQL服务器上线的时间
show status like 'uptime';
# 查询慢查询的次数
show status like 'slow_queries';
# 查询 查询操作的次数
show status like 'com_select';
查看MySQL服务器配置信息 :
show variables;
查看MySQL服务器运行的各种状态值 :
show global status;
慢查询:
show variables like '%s%';
show global status like '%slow%';
连接数:
show variables like 'max_connections';
key_buffer_size 是对MyISAM表性能影响最大的一个参数
show variables like 'key_buffer_size';
临时表:
show global status like 'created_tmp%';
查看open table :
show global status like 'open%tables%';
进程使用情况:
show global status like 'Thread%';
查询缓存(query cache) :
show global status like 'qcache%';
文件打开数(open_files) :
show global status like 'open_files';
表锁情况 :
show global status like 'table_locks%';
表扫描情况 :
show global status like 'handler_read%';
查询吞吐量:
SHOW GLOBAL STATUS LIKE "Questions";
连接情况:
SHOW VARIABLES LIKE 'max_connections';
分析查询语句
mysql提供了explain语句和describe语句,进行分析查询语句
EXPLAIN的语法:
EXPLAIN [EXTENDED] SELECT select_options;
说明:
使用 EXTENED 关键字,EXPLAIN 语句将产生附加信息。
select_options是select语句的查询选项,包括from where子句,执行该语句,可以分析EXPLAIN后面的select语句的执行情况,并且能够分析出所查询的表的一些特征。
示例:
explain select * from tb_person_info;
DESCRIBE语句
使用方法与EXPLAIN语句是一样的,并且分析结果也是一样的。
语法:
DESCRIBE SELECT select_options。DESCRIBE可以缩写成DESC。
mysql中提高性能的最有效的方式:
1, 对数据表设计合理的索引。索引提供了高效访问数据的方法,并且加快了查询的速度。
使用索引查询几种特殊情况:
1,使用like关键字的查询语句。在使用like关键字进行查询的查询语句中,如果匹配字符串的第一个字符为"%",索引不起作用。只有"%"不在第一个位置,索引才会起到作用。
2, 使用模糊查询, "%"在前面的结果,显示索引没有起作用了
3, 使用模糊查询,"%"在后面的结果,索引起作用了。
- 上一篇
MySQL按月自动创建分区表(千万级大表优化)
什幺是表分区?对用户来说,分区表是一个独立的逻辑表,但是底层由多个物理子表组成,实现分区的代码实际上是通过对一组底层表的对象封装,但对SQL层来说是一个完全封装底层的黑盒子
- 下一篇
Python连接Mysql数据库的几种方式以及问题排查方法
一、使用pymysql连接Mysql数据库 连接示例:conn = pymysql.connect(host=host,user=user,password=passwd,db=db,port=int(prot),charset='utf8mb4') pymysq源代码:创建连接的源代码如下,可根据注释参考param host自行添加所需参数。