侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

mysql慢查询操作实例分析【开启、测试、确认等】

数据库  /  管理员 发布于 6年前   226

本文实例讲述了mysql慢查询操作。分享给大家供大家参考,具体如下:

mysql有些sql会执行很慢,有可能造成服务器负载飙升

首先查询 确定影响负载的是mysql ,使用top命令,ps命令等

其次,进入MySQL,使用show full processlist查询执行中的sql语句,看看问题,使用explain 命令 查看状态

最后找出sql语句杀死或者优化

centos7上面安装mariadb服务

yum -y install mariadb-server mariadb-devel

开启慢查询

more /etc/my.cnf.d/server.cnf
[mariadb]slow_query_log=ONslow_query_log_file=/usr/local/mysql/data/slow.loglong_query_time=1

启动mariadb服务

systemctl start mariadb

查询mysql的慢查询是否开启,以及多久的时间以上是慢查询

MariaDB [(none)]> show variables like '%slow_query%';+---------------------+--------------------------------+| Variable_name    | Value |+---------------------+--------------------------------+| slow_query_log   | ON   || slow_query_log_file | /usr/local/mysql/data/slow.log |+---------------------+--------------------------------+2 rows in set (0.00 sec)MariaDB [(none)]> show variables like 'long_query_time';+-----------------+----------+| Variable_name  | Value  |+-----------------+----------+| long_query_time | 1.000000 |+-----------------+----------+1 row in set (0.00 sec)
#如果没用开启慢查询,可以在命令行开启mysql> set global slow_query_log=1;Query OK, 0 rows affected (0.00 sec)

 测试慢查询,以及查看日志

MariaDB [(none)]> select sleep(2);+----------+| sleep(2) |+----------+|    0 |+----------+1 row in set (2.00 sec)
[root@localhost ~]# more /usr/local/mysql/data/slow.log/usr/libexec/mysqld, Version: 5.5.60-MariaDB (MariaDB Server). started with:Tcp port: 0 Unix socket: /var/lib/mysql/mysql.sockTime         Id Command  Argument# Time: 180930 23:51:07# User@Host: root[root] @ localhost []# Thread_id: 2 Schema:  QC_hit: No# Query_time: 2.001017 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 0SET timestamp=1538322667;select sleep(2);

 确认慢查询

MariaDB [(none)]> show full processlist; #查看state慢查询在进行+----+------+-----------+------+---------+------+------------+-----------------------+----------+| Id | User | Host   | db  | Command | Time | State   | Info         | Progress |+----+------+-----------+------+---------+------+------------+-----------------------+----------+| 3 | root | localhost | NULL | Query  |  9 | User sleep | select sleep(10)   |  0.000 || 4 | root | localhost | NULL | Query  |  0 | NULL    | show full processlist |  0.000 |+----+------+-----------+------+---------+------+------------+-----------------------+----------+2 rows in set (0.00 sec)MariaDB [(none)]> show full processlist; #查看state慢查询已经结束,但是用户登陆了+----+------+-----------+------+---------+------+-------+-----------------------+----------+| Id | User | Host   | db  | Command | Time | State | Info         | Progress |+----+------+-----------+------+---------+------+-------+-----------------------+----------+| 3 | root | localhost | NULL | Sleep  |  1 |    | NULL         |  0.000 || 4 | root | localhost | NULL | Query  |  0 | NULL | show full processlist |  0.000 |+----+------+-----------+------+---------+------+-------+-----------------------+----------+2 rows in set (0.00 sec)

更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL查询技巧大全》、《MySQL常用函数大汇总》、《MySQL日志操作技巧大全》、《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》及《MySQL数据库锁相关技巧汇总》

希望本文所述对大家MySQL数据库计有所帮助。


  • 上一条:
    解析MySQL隐式转换问题
    下一条:
    mysql存储过程原理与使用方法详解
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 分库分表的目的、优缺点及具体实现方式介绍(0个评论)
    • DevDB - 在 VS 代码中直接访问数据库(0个评论)
    • 在ubuntu系统中实现mysql数据存储目录迁移流程步骤(0个评论)
    • 在mysql中使用存储过程批量新增测试数据流程步骤(0个评论)
    • php+mysql数据库批量根据条件快速更新、连表更新sql实现(0个评论)
    • 近期文章
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • Laravel 11.15版本发布 - Eloquent Builder中添加的泛型(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2017-06
    • 2017-08
    • 2017-09
    • 2017-10
    • 2017-11
    • 2018-01
    • 2018-05
    • 2018-10
    • 2018-11
    • 2020-02
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2020-07
    • 2020-08
    • 2020-09
    • 2021-02
    • 2021-04
    • 2021-07
    • 2021-08
    • 2021-11
    • 2021-12
    • 2022-02
    • 2022-03
    • 2022-05
    • 2022-06
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-10
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-03
    • 2023-04
    • 2023-05
    • 2023-07
    • 2023-08
    • 2023-10
    • 2023-11
    • 2023-12
    • 2024-01
    • 2024-03
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客