开启MYSQL慢查询日志,监控有效率问题的SQL景下的并发测试

一、操作步骤

1. 首先使用用户登录linux客户端,执行命令 mysql -u mjb -p, mjb是数据库用户名,系统会提示输入密码,输入密码回车,登录成功
2. 输入命令show variables like 'slow_query_log',

页面会显示是否开启了慢查询日志,slow_query_log =ON,代表已经开启 如果未开启,则需要执行该命令set global slow_query_log=on;

3. 通过设置log_queries_not_using_indexes开启为使用索引的监控

输入命令show variables like ‘log_queries_not_using_indexes’; log_queries_not_using_indexes=OFF,代表未开启,需要执行该命令 set global log_queries_not_using_indexes=on;

4. 通过long_query_time设置监控阀值,也就是超过多少秒就记录,单位是秒,此处设置为0.1也就是100毫秒

输入命令show variables like ‘long_query_time’;

系统设置的为1秒,如果需要修改为0.1秒,则需要执行如下命令 set global long_query_time=0.1;

5. 通过以上设计,基本上可以开始优化工作了,set global 只是全局session生效,重启后失效,如果需要以上配置永久生效,需要在mysql.cnf中配置

[mysqld] slow_query_log = 1 log_queries_not_using_indexes =1 long_query_time = 0.1 slow_query_log_file =/apps/logs/mysql/slow3306.log 如果是linux,就通过以下命令或service等其他方式重启 启动:/etc/init.d/mysqld(mysql) start 停止:/etc/init.d/mysqld(mysql) stop 重启:/etc/init.d/mysqld(mysql) restart 最后查看慢查询日志所在的位置,通过查看slow_query_log_file 执行命令show variables like ‘slow_query_log_file’ \G

显示的日志记录在/apps/logs/mysql/slow3306.log目录,测试结果如下

记录成功

字段名

含义

Time

int类型时间戳 加 时间

180913 10:39:57

User@Host

执行SQL的主机信息

mjb[mjb] @ localhost []

Thread_id

线程id

5271182

Query_time

执行时间

2.000219

Lock_time

锁定时间

0.000000

Rows_sent

返回记录数

1

Rows_examined

扫描行数

0

SET timestamp

SQL执行用时

1536806397

select sleep(2)

SQL语句

select sleep(2);

设置成功,性能测试完成,可以把监控到的慢SQL日志文件进行查看,看是哪些SQL语句需要进行优化

本文分享自微信公众号 - jmeter相关技术交流(jmeter_auto)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-10-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Nicky's blog

MySQL变量介绍和用法简介

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

13230
来自专栏Python数据科学

一文读懂 select count(*) 底层原理

“SELECT COUNT( * ) FROM TABLE” 是个再常见不过的 SQL 需求了。在 MySQL 的使用规范中,我们一般使用事务引擎 InnoDB...

10020
来自专栏Java架构学习路线

MySQL的4种事务隔离级别你还不清楚吗?

首先创建一个表 account。创建表的过程略过(由于 InnoDB 存储引擎支持事务,所以将表的存储引擎设置为 InnoDB)。表的结构如下:

9910
来自专栏JAVA葵花宝典

你知道短URL服务是怎么设计的吗?

想必大家也经常收到垃圾短信吧... 短信中的链接一般都是短链接, 类似于下图这样:

5820
来自专栏万能青年的 Java 编程

MySQL慢查询日志

MySQL 的慢查询日志是MySQL提供的一种日志记录,他用来记录在MySQL中响应时间超过阀值的语句。

15920
来自专栏编程语言xuetang

JDBC之预编译事务批处理存图片

PreparedStatement 用于预编译模板SQL语句,在运行时接受sql输入参数

7510
来自专栏编程语言xuetang

DAO设计

Data Access Object(数据存取对象),位于业务逻辑和持久化数据之间,实现对持久化数据的访问。

8230
来自专栏中科院渣渣博肆僧一枚

torch.utils.data

At the heart of PyTorch data loading utility is the torch.utils.data.DataLoader ...

18210
来自专栏SDNLAB

Segment Routing 之 Data-Plane & Control-Plane

作者简介:张磊,思科原厂8年多technical consulting engineer,精通思科数据中心/园区网产品及技术;精通SAN网络架构及产品;熟悉广域...

14320
来自专栏测试游记

测试开发进阶(二十)

Django makes it easier to build better Web apps more quickly and with less code.

7630

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励