Anemometer已经不更新了,pt-query-digest 3.0.11后续版本生成的checksum包含英文字母,点击SQL的checksum进详情页提示:“Unknown checksum: ……”

说明:
老版本pt-query-digest生成的checksum是纯数字,anemometer为了展示美观(固定长度)等原因,将checksum转成16进制列表展示,进详情页后,再讲16进制转换成10进制查找具体SQL详情。这两次转换无法将有因为字母的checksum正确转换,因此详情页无法找到chencsum。

方案:
去掉checksum的两次转换,列表直接显示原checksum。

修改内容,去除转换

# vi conf/config.inc.php
$conf['reports']['slow_query_log'] = array('callbacks'     => array('table' => array(//注释此行//'checksum' => function ($x) { return array(dec2hex($x), ''); }))# vi lib/Anemometer.php private function translate_checksum($checksum){else if (preg_match('/^[0-9A-Fa-f]+$/', $checksum)){//改为直接return $checnsum//return $this->bchexdec($checksum);  return $checksum;}

anemometer根据checksum查询时,默认该值为数字,因此where条件后面的变量$checksum未使用单引号,导致报错:Unknown column ……

修改以下文件,$checksum要加单引号:

# vi lib/AnemometerModel.php
$query = "SELECT `{$checksum_field_name}` FROM `{$this->fact_table}` WHERE `{$checksum_field_name}`='" . $this->mysqli->real_escape_string($checksum) . "'";$sql .= " WHERE `{$checksum_field_name}`='" . $this->mysqli->real_escape_string($checksum) . "'";$result = $this->mysqli->query("SELECT * FROM `{$this->fact_table}` WHERE `{$checksum_field_name}`='{$checksum}'");$sql = "SELECT * FROM `{$table}` WHERE `{$checksum_field_name}`='{$checksum}' ORDER BY `{$time_field_name}` DESC LIMIT {$limit} OFFSET {$offset}";

完。。。

Anemometer适应新版pt-query-digest需要的调整相关推荐

  1. anemometer mysql_使用Anemometer基于pt-query-digest将MySQL慢查询可视化

    最近玩MySQL,发现了一个很不错的工具,可以把MySQL慢查询可视化,方便我们去找出和分析慢询语句,搭建的步骤不多,但网上详细教程比较少,说得也不够详细,一不小心,估计得蛋痛一会,哈哈 Percon ...

  2. mysql Pt工具简单用法

    pt工具 pt-osc 1.安装pt在这里插入代码片 第一步:wget percona.com/get/percona-toolkit.tar.gz 第二步:解压文件 第三步:解压后进入文件 cd c ...

  3. Spring+SpringMVC+Mybatis SSM框架详解

    一.JDBC编程 1.JDBC 简介 JDBC其实就是 Java 官方提供的一套规范(接口),用于帮助开发人员快速实现不同关系型数据库的连接. 程序运行的时候,数据都是在内存中的.当程序终止的时候,通 ...

  4. 万字总结 MySQL核心知识,赠送25连环炮

    前言 大家好,我是老田,之前写过 JVM.并发编程连环炮.然后有很多小伙伴私下找我就我继续把MySQL的连环炮整理出来,但是由于本人比较懒,又加上最近有点忙,所以拖到了今天才发出来. 有志者,事竟成: ...

  5. 线段树-离散化处理点

    博客 :http://www.cnblogs.com/wuyiqi/archive/2012/03/19/2405885.html The citizens of Bytetown, AB, coul ...

  6. MySQL优化学习总结

    MySQL 性能优化的最佳20多条经验分享 http://www.jb51.net/article/24392.htm 今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关 ...

  7. 比较全面的MySQL优化参考

    1.硬件层相关优化 1.1.CPU相关 在服务器的BIOS设置中,可调整下面的几个配置,目的是发挥CPU最大性能,或者避免经典的NUMA问题: 1.选择Performance Per Watt Opt ...

  8. mysql数据库参考_干货:MySQL数据库优化参考

    标签: 本文整理了一些MySQL的通用优化方法,做个简单的总结分享,旨在帮助那些没有专职MySQL DBA的企业做好基本的优化工作,至于具体的SQL优化,大部分通过加适当的索引即可达到效果,更复杂的就 ...

  9. ThinkPHP- 3.1

    基础: 1. 基础概念 LAMP LAMP是基于Linux,Apache,MySQL和PHP的开放资源网络开发平台.这个术语来自欧洲,在那里这些程序常用来作为一种标准开发环境.名字来源于每个程序的第一 ...

最新文章

  1. [七月挑选]使用idea创建spring boot 项目
  2. Visual Studio 生成项目前自动关闭在运行的程序
  3. Leet Code OJ 191. Number of 1 Bits [Difficulty: Easy]
  4. kotlin学习之集合(十三)
  5. JQuery学习笔记12——GET请求和POST请求
  6. ☆【CodeForces - 764C】Timofey and a tree (思维题,树的性质)
  7. cat6 万兆_cat6 万兆
  8. Docker组队学习(二)
  9. (转载)ARM的字对齐问题总结
  10. 因分辨率变化html页面布局跳动_Web前端页面设计流程及注意事项,谨记!
  11. EasyDarwin流媒体云平台:EasyCamera开源摄像机接入海康威视摄像机实时视频
  12. 马尔可夫不等式、切比雪夫不等式、柯西-施瓦茨不等式
  13. 通过L-evy飞行进行布谷鸟搜索
  14. pcd 地图转 栅格地图
  15. 无法访问Windows7默认共享的解决方法
  16. unity之环状图片轮播
  17. 5000字 大数据时代读书笔记_大数据时代读书笔记
  18. Linux write through 和write back
  19. 1 华为南研所软件研发校园优招面试经历
  20. 爬取小说网站章节和小说语音播放

热门文章

  1. matlab 数字转化为文字,将数值转换为文本 - MATLAB Simulink - MathWorks 中国
  2. 输入50以内的所有质数
  3. C# FileStream类:文件读写
  4. 关于微软研究院(谢幸、郑宇研究员主导的)“智能城市”“智能生活”研究的一个归纳
  5. 正在保存“index.vue”: 从 “‘Vetur‘, ‘ESLint‘“ (configure)中获取代码操作。
  6. CTF之Accept-Language规范总结
  7. java微信支付代码_10行代码搞定微信支付(Java版)
  8. 什么从什么写短句_什么是什么,能什么写句子补充完整
  9. 安装使用Docker
  10. 宝塔服务器环境好不好_Windows系统使用宝塔面板安装什么环境好