1.记录慢查询配置
show variables where variable_name like 'slow%' ; --查看默认日志路径
查询结果:--不用的机器可能不同
slow_query_log_file=/var/lib/mysql/centos-slow.log
修改mysqld配置文件:/usr /my.cnf[一般在/etc/my.cnf,本机在/user/my.cnf],添加以下几项:
[mysqld]
slow_query_log=ON
long_query_time=0.2
long_query_time较低(5.0及之前)的mysql版本不支持小数
set global slow_query_log=ON; --如果通过这个脚本设置的话,重启mysql后就失效了
log-queries-not-using-indexes --表示记录没有使用索引的语句到慢查询日志
配置好上述参数后,重启mysqld服务,开始对性能差的查询SQL进行监测。
2.分析慢查询日志
运行一段时间后,慢查询日志会记录到上面路径的日志文件中,因为日志记录很多,不可能一条一条记录的去分析,可以通过mysql自带的msyqldumpslow进行分析。
1) # 找出平均执行时间最长的10条SQL
mysqldumpslow -t 10 -s at /var/lib/mysql/centos-slow.log > /var/lib/mysql/centos-slow-at.log
2) # 找出总执行时间最长的10条SQL
mysqldumpslow -t 10 -s t /var/lib/mysql/centos-slow.log > /var/lib/mysql/centos-slow-t.log
3) # 找出执行次数最多的10条SQL
mysqldumpslow -t 10 -s c /var/lib/mysql/centos-slow.log > /var/lib/mysql/centos-slow-c.log
4) # 找出返回记录数最多的10条SQL
mysqldumpslow -t 10 -s r /var/lib/mysql/centos-slow.log > /var/lib/mysql/centos-slow-r.log
3.记录所有SQL
[mysqld]
general_log=ON
show variables like '%log%';
查询结果:--记录所有sql的日志文件
general_log_file=/var/lib/mysql/centos.log
或者将long_query_time的值设置为0记录所有的SQL
4.p6spy
性能优化,通常需要将同一事务中所有执行的sql进行分析和优化,这就要获取这一事务执行过程中执行的所有sql语句。一般应用的架构均有控制是否显示所有操作sql的参数,如果没有的话,可以通过p6spy记录。
1)将p6spy.jar包拷贝到WEB-INF/lib目录下
2)将spy.properties拷贝到WEB-INF/classes目录下
3)将应用的驱动修改为com.p6spy.engine.spy.P6SpyDriver
4)将spy.properties中的realdriver设置为真实的驱动,com.mysql.jdbc.Driver
5)运行应用,可以看到tomcat的bin目录下有个spy.log文件,这个文件记录了所有操作的sql语句。仅需关注statement类型的即可,resultset和result类型的语句不需关心。
相关推荐
8、NIFI综合应用场景-NiFi监控MySQL binlog进行实时同步到hive 网址:https://blog.csdn.net/chenwewi520feng/article/details/130620988 本文旨在介绍通过实时监控mysql的binlog实现数据的实时同步至hive中。但由于...
Linux运维-运维构架师-高级运维架构师-Day11-zabbix-1-05-web监控及mysql监控三部
为什么使用索引可以提高查询性能? 什么是事务?MySQL如何支持事务处理? 什么是主键和外键?它们之间有什么区别? 什么是数据库范式?列举一些常见的数据库范式。 什么是数据库连接池?为什么使用连接池可以...
Mysql性能监控工具(MONyog-5.5.8-0.i386.tar.gz)
用于MySQL-MMM的监控模块,是安装其监控工具的一个yum源
MySQL数据库监控管理利器, 该文件是目前(2013年12月17日)官网最新版本,亲测,可用。 MONyog MySQL数据库监控管理工具被称作“MySQL... 监控MySQL错误日志 实时监控查询,定位运行时间过长的查询 数据库报警功能
附光盘性能调优高可用与监控 》从作者贺春旸的实际工作经验出发 针对生产环境MySQL5 5分别从故障处理 高可用 性能优化等角度系统地阐述了数据库运维过程中需要注意的地方及解决问题的思路 并针对2013年2月Oraclel自...
Mysql-mtop性能监控,mysql性能监控工具使用说明
Linux运维-03-监控专题-day02-prometheus安装与介绍-11-grafana导入mysql监控
lepus监控完整版,SQL server MYSQL redis 系统资源 oracle
MySQL数据库性能监控与诊断
7、NIFI综合应用场景-将mysql查询出的json数据转换成txt后存储至HDFS中 网址:https://blog.csdn.net/chenwewi520feng/article/details/130620392 本文是在6、NIFI综合应用场景-离线同步Mysql数据到HDFS中基础上完成...
Mysql 执行优化 2 认识数据索引 2 为什么使用数据索引能提高效率 2 如何理解数据索引的结构 2 优化实战范例 3 认识影响结果集 4 影响结果集的获取 4 影响结果集的解读 4 常见案例及优化思路 5 理解执行状态 7 常见...
mysql数据库三个关键性能指标-TPS-QPS-IOPS,可以实时监控数据库运行情况,以便及时处理问题。
实时MySQL健康监控、复制监控、进程监控、性能监控、实时告警、慢查询分析、服务器资源监控等。
Box Anemometer 是一个 MySQL 慢查询监控器,用来分析 MySQL 中的执行效率底下的 SQL 语句,以找出系统慢的原因。 标签:Anemometer
MYIE-监控IE上网记录-MYSQL记录-有查询器-适用于网吧-或-公司使用-电脑资料.doc
Percona Monitoring and Management (PMM)是一款开源的用于管理和监控MySQL和MongoDB性能的开源平台,通过PMM客户端收集到的DB监控数据用第三方软件Grafana画图展示出来。 PMM提供了对MyISAM、InnoDB、TokuDB和PXC/...
mysql慢查询监控pmm的安装使用记录,部署起来后可以查看mysql性能数据、图表,可以查看慢查询记录等。
监控和分析慢查询:开启慢查询日志,使用mysqldumpslow命令分析慢查询,找出并优化执行时间较长的SQL语句。 调整MySQL配置:根据服务器的硬件资源和应用需求,调整MySQL的各项参数,如缓冲池大小、最大连接数等,以...