SHOW STATUS 查看各种类型SQL执行的频率
以下几个参数对 Myisam 和 Innodb 存储引擎都计数:
1. Com_select 执行 select 操作的次数,一次查询只累加 1;
2. Com_insert 执行 insert 操作的次数,对于批量插入的 insert 操作,只累加一次;
3. Com_update 执行 update 操作的次数;
4. Com_delete 执行 delete 操作的次数;
1. Innodb_rows_read select 查询返回的行数;
2. Innodb_rows_inserted 执行 Insert 操作插入的行数;
3. Innodb_rows_updated 执行 update 操作更新的行数;
4. Innodb_rows_deleted 执行 delete 操作删除的行数;
以查询操作为主,以及各种类型的 SQL 大致的执行比例是多少。对于更新操作的计数 ,是对执行次数的计数,不论提交还是回滚都会累加。
对于事务型的应用,通过 Com_commit 和 Com_rollback 可以了解事务提交和回滚的情况,对于回滚操作非常频繁的数据库,可能意味着应用编写存在问题。
此外,以下几个参数便于我们了解数据库的基本情况:
1. Connections 试图连接 Mysql 服务器的次数
2. Uptime 服务器工作时间
3. Slow_queries 慢查询的次数
mysqladmin -h127.0.0. -r -i extended-status |awk -F "|" 'BEGIN { count=0; } { if($2 ~ /Variable_name/ && ++count%15 == 1){print "----------|---------|--- MySQL Command Status --|----- Innodb row operation -----|-- Buffer Pool Read --"; print "---Time---|---QPS---|select insert update delete| read inserted updated deleted| logical physical";} else if ($2 ~ /Queries/){queries=$3;} else if ($2 ~ /Com_select /){com_select=$3;} else if ($2 ~ /Com_insert /){com_insert=$3;} else if ($2 ~ /Com_update /){com_update=$3;} else if ($2 ~ /Com_delete /){com_delete=$3;} else if ($2 ~ /Innodb_rows_read/){innodb_rows_read=$3;} else if ($2 ~ /Innodb_rows_deleted/){innodb_rows_deleted=$3;} else if ($2 ~ /Innodb_rows_inserted/){innodb_rows_inserted=$3;} else if ($2 ~ /Innodb_rows_updated/){innodb_rows_updated=$3;} else if ($2 ~ /Innodb_buffer_pool_read_requests/){innodb_lor=$3;} else if ($2 ~ /Innodb_buffer_pool_reads/){innodb_phr=$3;} else if ($2 ~ /Uptime / && count >= 2){ printf(" %s |%9d",strftime("%H:%M:%S"),queries);printf("|%6d %6d %6d %6d",com_select,com_insert,com_update,com_delete);printf("|%8d %7d %7d %7d",innodb_rows_read,innodb_rows_inserted,innodb_rows_updated,innodb_rows_deleted); printf("|%10d %11d\n",innodb_lor,innodb_phr);}}'
输出结果如下:
----------|---------|--- MySQL Command Status --|----- Innodb row operation -----|-- Buffer Pool Read --
---Time---|---QPS---|select insert update delete| read inserted updated deleted| logical physical
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
----------|---------|--- MySQL Command Status --|----- Innodb row operation -----|-- Buffer Pool Read --
---Time---|---QPS---|select insert update delete| read inserted updated deleted| logical physical
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
可以清楚的看见QPS,以及各种SQL的执行频率,通过上面的执行结果来看,我现在主要是读比较频繁。好了,就说到这里了。^_^
SHOW STATUS 查看各种类型SQL执行的频率的更多相关文章
- 查看用户的SQL执行历史
程序开发少不来SQL,基本都是基于SQL开发,程序仅仅起一个流程控制的作用.但是数据库本身存在许多内置的视图或者内置的表,如果打算研究SQL执行的效率已经SQL执行的历史记录,通过这些视图可以知道. ...
- 查看Oracle数据库SQL执行历史
-- 找出哪个数据库用户用什么程序在最近三天执行过delete或truncate table的操作 SELECT c.username, a.program, b.sql_text, b.comman ...
- 如何使用性能分析工具定位SQL执行慢的原因?
但实际上 SQL 执行起来可能还是很慢,那么到底从哪里定位 SQL 查询慢的问题呢?是索引设计的问题?服务器参数配置的问题?还是需要增加缓存的问题呢?性能分析来入手分析,定位导致 SQL 执行慢的原因 ...
- EXPLAIN 查看 SQL 执行计划
EXPLAIN 查看 SQL 执行计划.分析索引的效率: id:id 列数字越大越先执行: 如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询. ...
- ORACLE 查看有多个执行计划的SQL语句
在SQL优化过程,有时候需要查看哪些SQL具有多个执行计划(Multiple Executions Plans for the same SQL statement),因为同一个SQL有多个执行计划一 ...
- PL/SQL执行计划查看
一.如何查看PLSQL的执行计划 在SQl Window窗口输入sql语句,然后按键"F5",就会进入执行计划查看界面. 二.界面说明 首先我们看第二行有几个属性可以选“Tree” ...
- mysql查看sql执行情况的几种方法
mysql系统变量分为全局变量和会话变量,全局变量的修改影响到整个服务器,会话变量修改只影响当前的会话. 查看log日志是否开启 show variables like 'general_log' s ...
- 通过show status 命令了解各种sql的执行频率
show status like 'Com_%'; Com_select | 1 执行select操作的次数,一次查询只累加1 Com_insert ...
- ORACLE查看SQL的执行次数/频率
在ORACLE数据库应用调优中,一个SQL的执行次数/频率也是常常需要关注的,因为某个SQL执行太频繁,要么是由于应用设计有缺陷,需要在业务逻辑上做出优化处理,要么是业务特殊性所导致.如果执行频繁的S ...
随机推荐
- Java8使用@sun.misc.Contended避免伪共享(False Sharing)
伪共享(False Sharing) Java8中用sun.misc.Contended避免伪共享(false sharing) Java8使用@sun.misc.Contended避免伪共享
- Pika的设计及实现
Pika pika是360奇虎公司开源的一款类redis存储系统,主要解决的是用户使用 Redis 的内存大小超过 50G.80G 等等这样的情况,会遇到启动恢复时间长,一主多从代价大,硬件成本贵,缓 ...
- java注解中的元注解
一:java注解中的元注解 四个元注解分别是:@Target,@Retention,@Documented,@Inherited , 再次强调下元注解是java API提供,是专门用来定义注解的注解, ...
- SpringBoot------拦截器Filter的使用
前言: 最新Servlet 3.0拦截器的使用 1.pom.xml添加需要使用的依赖 <project xmlns="http://maven.apache.org/POM/4.0.0 ...
- Web 文件上传 目录
0. SpringMVC -- 梗概--源码--贰--上传 1. Web上传文件的原理及实现 2. Web文件上传方法总结大全 3. SpringMVC 文件上传配置,多文件上传,使用的Multipa ...
- ASP.NET MVC 4 (七) 模板帮助函数
和普通HTML帮助函数不同,模板帮助函数不需要指定所用的HTML类型,MVC会推断选择合适的HTML元素,这让我们有更多的灵活性. 使用模板帮助函数 我们使用<ASP.NET MVC 4 (六) ...
- 解决UEFI启动模式下无法使用U盘启动WIN7安装界面
问题场景 现在很多人都习惯使用U盘进行安装系统,主要是快捷方便.本文主要是讲解一下U盘在UEFI模式下无法启动Windows7安装界面的问题,可能很多人会说使用PE系统进行安装,但是因为我的主板只有独 ...
- day_5.10py 爬妹子图片 mm131
#目前学的爬虫还有潭州教育的直播课,都是千篇一律的requests urllib 下面这个也是,还没有我后面的下载网易云歌单爽来都用到多线程了不过可以用协程,完全异步 1 #!/usr/bin/env ...
- E - Cup
The WHU ACM Team has a big cup, with which every member drinks water. Now, we know the volume of the ...
- 网络通信协议五之IP协议详解
网络层协议 >>IP协议 >>ARP(地址解析协议) >>RARP(反向地址解析协议) >>ICMP(互联网控制消息协议) IP协议功能 >> ...