首先连接上mysql:

$ mysql -h 192.168..x -P3306 -uusername -p123456

进入Mysql之后,查询general_log:

mysql>  SHOW VARIABLES LIKE "general_log%";
+------------------+----------------------------+
| Variable_name | Value |
+------------------+----------------------------+
| general_log | OFF |
| general_log_file | /var/run/mysqld/mysqld.log |
+------------------+----------------------------+
rows in set (0.00 sec)

如果这个时候general_log是关闭的,可用命令设置为ON:

mysql> SET GLOBAL general_log = 'ON';
Query OK, rows affected (0.00 sec)

同理也可以设置文件路径:

mysql> SET GLOBAL general_log_file = '/var/run/mysqld/mysqld.log';
Query OK, rows affected (0.06 sec)

打开/var/run/mysqld/mysqld.log文件看到的是如下展示:

Time            Id  Command     Argument
:: Query REPLACE INTO *
Query REPLACE INTO *
Query REPLACE INTO *
Query REPLACE INTO *

从该文件可以看出来,秒数发生改变的时候,才会打印带日期的日志。那么可用通过该文件两个带日期的行之间的行数差距,即可算出其QPS:

  • 筛选带有日期的行,带上行号转存到文件
$ grep "^1905" -n mysqld.log > Line.txt 
  • 编写一个Python脚本,计算QPS
 #coding=utf-8
import os,sys if __name__ == '__main__':
file = open('Line.txt', 'r')
if file == None:
print "open file failed"
sys.exit(1)
outFile = open("QPS.csv", 'w')
outFile.write("Time,QPS");
lastLine = 0
for line in file:
params = line.split(' ')
if len(params) < 2:
continue time = params[1]
lineAndDate = params[0]
subParams = lineAndDate.split(':')
if len(subParams) < 2:
continue
line = int(subParams[0])
date = subParams[1]
fullDate = "%s %s" %(date, time)
QPS = line - lastLine
lastLine = line outFile.write("\r\n%s,%d"%(fullDate,QPS))
outFile.close()
file.close()

然后执行脚本,计算结果导出到QPS.csv:

mysql计算QPS的更多相关文章

  1. mysql计算时间差函数

    MySql计算两个日期的时间差函数TIMESTAMPDIFF用法,只要用一句SQL语句就可以办到了. MySql计算两个日期的时间差函数TIMESTAMPDIFF用法: 语法: TIMESTAMPDI ...

  2. MySQL计算时间差

    MySQL计算两个日期的时间差函数:TIMESTAMPDIFF 语法: TIMESTAMPDIFF(interval, datetime_expr1, datetime_expr2) interval ...

  3. mysql计算连续天数,mysql连续登录天数,连续天数统计

    mysql计算连续天数,mysql连续登录天数,连续天数统计 >>>>>>>>>>>>>>>>>& ...

  4. mysql计算排名 转

    from :http://www.cnblogs.com/aeiou/p/5719396.html http://www.cnblogs.com/zengguowang/p/5541431.html ...

  5. MySql计算两个日期的时间差函数

    MySql计算两个日期时间的差函数: 第一种:TIMESTAMPDIFF函数,需要传入三个参数,第一个是比较的类型,可以比较FRAC_SECOND.SECOND. MINUTE. HOUR. DAY. ...

  6. mysql计算排名

    mysql计算排名,获取行号rowno 学生成绩表数据 SELECT * FROM table_score ORDER BY score DESC; 获取某个学生成绩排名并计算该学生和上一名学生成绩差 ...

  7. MySQL计算日期的函数DATE_SUB(d,INTERVAL expr type)

    MySQL计算日期的函数DATE_SUB(d,INTERVAL expr type) DATE_SUB(d,INTERVAL expr type)函数返回起始日期d减去一个时间段后的日期. expr是 ...

  8. MySql计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数

    MySql计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数 计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数,这里主要分享的是通过MySql内置的函数 TimeStampDiff() ...

  9. mysql 计算两点经纬度之间的距离含具体sql语句

    mysql距离计算,单位m,以及排序 lon 经度 lat 纬度 一般地图上显示的坐标顺序为,纬度在前(范围-90~90),经度在后(范围-180~180) 首先新建一张表,里面包含经纬度 SET F ...

随机推荐

  1. IE下 CSS hover iframe失效

    预期:某个div下存在iframe子元素,当鼠标移动到该div下,该iframe出现,移出则iframe消失,移入iframe不会引起iframe消失. 问题:在火狐下结果满足预期,在IE下,鼠标移入 ...

  2. jar/war文件的解释

    http://blog.csdn.net/tang_123_/article/details/6012202#comments

  3. LAMP之Apache调优

    一.环境的搭建 实验环境: 操作系统:Centos 7.4 [root@xuegod70 ~]# ls apr-1.6.3.tar.gz apr-util-1.6.1.tar.bz2 httpd-2. ...

  4. es6 实现双链表

    const util = require('util'); /** * 链表节点类 */ class Node { constructor (ele) { this.ele = ele; this.n ...

  5. JAVA正则表达式 Pattern和Matcher类

    java.util.regex是一个用正则表达式所订制的模式来对字符串进行匹配工作的类库包. 1.简介:  java.util.regex是一个用正则表达式所订制的模式来对字符串进行匹配工作的类库包. ...

  6. DISCUZ论坛各大功能模块入口文件介绍

    index.php 首页入口文件,这个文件相信大家都不陌生,小编就不具体介绍了. forum.php 论坛入口文件 portal.php 门户入口文件 group.php 群组入口文件 home.ph ...

  7. centos下同步备份工具rsync的安装及配置

    http://www.cnblogs.com/wander1129/archive/2013/03/27/2984922.html

  8. kubernetes/dashboard Getting Started

    Kubernetes Dashboard is a general purpose, web-based UI for Kubernetes clusters. It allows users to ...

  9. Spring boot Gradle项目搭建

    Spring boot Gradle项目搭建 使用IDEA创建Gradle工程     操作大致为:File->new->Project->Gradle(在左侧选项栏中)     创 ...

  10. python字典操作+文件操作+函数

    师从百测besttest今天老牛教了些函数调用的知识,布置了个作业如下: # 1.写一个商品管理的小程序# 2.商品存在文件里面# 1.添加商品# 输入产品名称.颜色.价格# 要校验商品是否存在,价格 ...