转载用sql语句计算出mysql数据库的qps,tps,iops性能指标
| 本帖最后由 LUK 于 2014-9-21 22:39 编辑
思路: 1 关注MYSQL三个方面的性能指标,分别为query数,transaction数,io请求数 2 在某个时间范围内(例如20秒),统计MYSQL中上面的三个指标的总量,以及每一秒的量 ,同时每隔一秒种打印一个当前的指标量,在最后再计算并打印时间段内总量及每秒量 3 在IO的统计公式如下: key_reads 和 key_writes都乘以2的原因是因为如果从磁盘中读或写索引块之后会再去磁盘读或写数据块,所以就会有至少两倍的IO请求. 4 虽然统计的时间范围可以自己指定(例如20秒),但最终计算每秒的指标量时,是以脚本开始执行时间至脚本执行结束时mysql uptime的时间差来算的,因为脚本执行会消耗一定时间,这样,实际的时间会多于我们指定的时间 #!/bin/bash #filename mysqlgather.sh --脚本的名字为mysqlgather.sh,执行例子为 ./mysqlgather.sh 20 s t i s t i 三个参数可以只输入其中任意一个或多个,可以只统计三个指标中的一个或者两个 如果三个参数都写或者都不写,表示都要统计s t i --selecom函数取query数量 selcom () echo "com_select: $SELECT_NUM" --trans_num函数 统计transaction数量 trans_num () COMMIT_NUM=`grep -i "com_commit" transactions.out | awk '{print $2}'` SUM_TRAN=$[ $COMMIT_NUM1 + $ROLLBACK_NUM1 ] --ionum函数统计io读写请求数 #IO ionum () SUM_IO=$[ $KEYREAD * 2 + $KEYWRITE * 2 + $READREQ + $DATAREAD + $DATAWRITE + $DBLWR + $LOGWRITE ] --up_time函数是统计MYSQL启动后的时间 --下面的程序逻辑是先检查输入了哪些参数,再计算所想要统计的指标 if [ $NUM_PARM = 1 ];then sleep 1 --统计时间范围内的总量 TIME_DIFF=$[ $UP_TIME2 - $UP_TIME1 ] --统计每秒的量 case $PARM2 in sleep 1 ;; "t") ;; "i") ionum sleep 1 ionum SUM_IO2=$SUM_IO ;; *) elif [ $NUM_PARM = 3 ];then if [ $PARM2 = "s" ] || [ $PARM2 = "t" ] && [ $PARM3 = "s" ] || [ $PARM3 = "t" ]; then SELECT_DIFF=$[ $SELECT_NUM2 - $SELECT_NUM1 ] TIME_DIFF=$[ $UP_TIME2 - $UP_TIME1 ] elif [ $PARM2 = "s" ] || [ $PARM2 = "i" ] && [ $PARM3 = "s" ] || [ $PARM3 = "i" ]; PARM1=$1 sleep 1 SELECT_DIFF=$[ $SELECT_NUM2 - $SELECT_NUM1 ] TIME_DIFF=$[ $UP_TIME2 - $UP_TIME1 ] sleep 1 TIME_DIFF=$[ $UP_TIME2 - $UP_TIME1 ] SELECT_DIFF=$[ $SELECT_NUM2 - $SELECT_NUM1 ] TIME_DIFF=$[ $UP_TIME2 - $UP_TIME1 ] SELECT_PERSECOND=$[ $SELECT_DIFF / $TIME_DIFF] else |
转载用sql语句计算出mysql数据库的qps,tps,iops性能指标的更多相关文章
- [转载]编写SQL语句查询出每个各科班分数最高的同学的名字,班级名称,课程名称,分数
[转载]编写SQL语句查询出每个各科班分数最高的同学的名字,班级名称,课程名称,分数 转载自:https://blog.csdn.net/one_money/article/details/56921 ...
- Python将JSON格式数据转换为SQL语句以便导入MySQL数据库
前文中我们把网络爬虫爬取的数据保存为JSON格式,但为了能够更方便地处理数据.我们希望把这些数据导入到MySQL数据库中.phpMyadmin能够把MySQL数据库中的数据导出为JSON格式文件,但却 ...
- sql语句计算出每个月的天数
原文:sql语句计算出每个月的天数 从当前月-11个月开始,到当前月为止,用一个sql语句计算出每个月的天数. SELECT TO_CHAR(ADD_MONTHS(SYSDATE,-LEVEL+1 ...
- 42.通过原生SQL语句进行操纵mysql数据库
views.py文件中: from django.shortcuts import render # 导入connection模块 from django.db import connection d ...
- mysql数据库使用sql命令窗口查询的数据,改成sql语句导入到mysql数据库中
1.查询语句为select * from t_table;导出的数据格式如下: 2.将数据文本备份,然后使用NOTEPAD++打开,然后只拷贝数据到新建txt中,然后进行如下替换: 1)将“ | ”分 ...
- sql语句备份/导入 mysql数据库或表命令
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/qq1355541448/article/details/30049851
- mysql性能监控qps,tps,iops
qps 每秒处理的查询数tps 每秒处理的事务数IOPS,每秒磁盘进行的I/O操作次数 给个方法或者思路,用啥工具或者命令,如何看,值是多少属于正常范围之内呢? Information from we ...
- delphi连接sql server数据库,并根据sql语句查询出数据显示--初级
需要用到四个组件,分别为: 1.ADOConnection1 设置Connectionstring属性(连接串),loginPrompt属性控制是否连接记住了密码: 2.ADOQuery1 设置Con ...
- SQL语句计算距离今天生日还差几天
转载于:http://www.w3dev.cn/article/20110125/sql-compute-birthdate-now-days.aspx SQL语句计算距离生日还差几天原理很简单,将要 ...
随机推荐
- [Qt] 利用QtWebKit完成JavaScript访问C++对象
一. 介绍 在浏览器扩展或者WebApp的项目经常用的脚本语言javascript有很多局限性,比如,javascript语言不能够夸窗口访问js对象,不能直接读写磁盘文件(这个也正是发明人设计的安全 ...
- 自然语言交流系统 phxnet团队 创新实训 个人博客 (三)
因为需要处理自然语言的括号切分问题,专门记录下. import java.util.Scanner; import java.util.Stack; /** * @author Owner * */ ...
- chromedriver与chrome版本映射表(更新至v2.30)
在 chrome://help/ 查看浏览器版本号 看到网上基本没有最新的chromedriver与chrome的对应关系表,便兴起整理了一份如下,希望对大家有用: chromedriver版本 支持 ...
- savReaderWriter 模块的使用
作用: 由于python可以辅助数据分析和数据挖掘,读取文件, 而savReaderWriter模块就是为此而设计. 官网 :http://pythonhosted.org/savReaderWrit ...
- SAP 金税接口代码 供参考
程序可以通过抓取 客户 开票信息等 下载文本 导出 需要事先创建好几个structure zc0000sdt0016, zc0000sdt0017 REPORT zc0000sdr0016 NO ST ...
- 【Python】python3-list列表引用
print(names) #列出列表的内容 print(names[3]) #访问列表中第4个值 print(names[1:3]) #访问列表中从第2个到第3个的值 print(names[-1]) ...
- 高通 mixer_paths.xml 音频配置文件 初始化过程
记录一下高通音频配置文件mixer_paths.xml初始化过程.参考代码基于Android O. hardware/qcom/audio/hal/audio_hw.c struct audio_mo ...
- 第三百六十四节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的mapping映射管理
第三百六十四节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的mapping映射管理 1.映射(mapping)介绍 映射:创建索引的时候,可以预先定义字 ...
- swing包含了各种组件的类
javax.swing 最常用的pachage,包含了各种swing组件的类 javax.swing.border 包含与swing组件外框有关的类 javax..swing.colorchooser ...
- JAVA组成原理及使用方法编辑环境及实现过程
JAVA组成原理一.由四方面组成:1.Java编程语言2.Java类文件格式3.Java虚拟机4.Java应用程序接口 当编辑并运行一个Java程序时,需要同时涉及到这四种方面.二.使用文字编辑软件: ...