碰到一个mysql cpu爆满的问题,简单记录下

步骤:

1、通过show processlist找到耗时最长的
mysql> show processlist;
+----+------+-----------------+------+---------+------+--------------+------------------------------------------------------------------------------------------------------+
| Id | User | Host            | db   | Command | Time | State        | Info                                                                                                 |
+----+------+-----------------+------+---------+------+--------------+------------------------------------------------------------------------------------------------------+
| 19 | root | localhost:60604 | big  | Query   | 1533 | Sending data | SELECT count(*) num,city FROM `ih_user_temp` where city in (select city from ih_user_temp where city |
| 25 | root | localhost       | NULL | Query   |    0 | NULL         | show processlist                                                                                     |
+----+------+-----------------+------+---------+------+--------------+------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)

2、先杀掉该进程
mysql> kill 19;
Query OK, 0 rows affected (0.01 sec)

3、通过慢查询日志找到具体的sql语句

开启慢查询:

[mysqld]
slow_query_log=1  #开启慢查询
long_query_time=5 #慢查询时间
log-slow-queries = /var/log/mysql/slowquery.log #需有写入权限

4、使用explain 优化sql语句,参考: mysql使用explain优化sql语句

引起cpu过高的sql一般集中在order by、group by、批量insert、嵌套子查询等sql语句中

5、调整my.cnf的query_cache_size和tmp_table_size的值

mysql服务器cpu爆满解决办法相关推荐

  1. mysql总是显示无法连接服务器,Navicat出现无法远程连接MySql服务器问题的解决办法...

    Navicat无法远程连接MySql服务器问题的解决方法写在前面: 操作系统:中标麒麟4.0: 数据库:MySQL5.7.26: JDK:采用中标麒麟系统自带的openjdk: 客户端工具:Navic ...

  2. 服务器配置mysql外网无法连接_Navicat出现无法远程连接MySql服务器问题的解决办法...

    Navicat无法远程连接MySql服务器问题的解决方法写在前面: 操作系统:中标麒麟4.0: 数据库:MySQL5.7.26: JDK:采用中标麒麟系统自带的openjdk: 客户端工具:Navic ...

  3. Navicat远程连接linux下mysql服务器1045错误解决办法在这儿

    1:首先通过xshell工具或者你熟悉的工具连接远程linux下的服务器 mysql -uroot -p      然后输入密码 2.进行授权 如果想root用户使用password从任何主机连接到m ...

  4. 用连接linux mysql工具1045,Navicat远程连接linux下mysql服务器1045错误解决办法在这儿...

    1:首先通过xshell工具或者你熟悉的工具连接远程linux下的服务器 mysql -uroot -p      然后输入密码 2.进行授权 如果想root用户使用password从任何主机连接到m ...

  5. iis 无法连接mysql_远程无法连接SQL2000及MySQL的原因和解决办法

    远程无法连接SQL2000及MySQL的原因和解决办法 时间:2019-11-10 11:06 1. 没有在数据库管理面板中设置远程连接IP造成的. 说明:为了提高操作系统的安全性,所有使用了星外安全 ...

  6. php 返回英文乱码,使用php 5时MySQL返回乱码的解决办法_php

    在使用 php 5 中,通过 mysql 查询得到的值全部成为 '???????',原来是字符集设错了. 我在安装 MySQL 5 时,已经选择默认字符集为 gb2312,但还是返回乱码,解决的办法是 ...

  7. Navicat无法远程连接MySql服务器问题的解决方法

    Navicat无法远程连接MySql服务器问题的解决方法 写在前面: 操作系统:银河麒麟4.0: 数据库:MySQL5.7.26: JDK:采用银河麒麟系统自带的openjdk: 客户端工具:Navi ...

  8. navicat for mysql 显示中文乱码解决办法

    navicat for mysql 显示中文乱码解决办法   最近遇到一个问题,用navicat for mysql 打开数据库时全都显示的是乱码(在用程序代码插入数据之前确保字符不是乱码),遇到问题 ...

  9. php服务器无法上传图片,IIS+php服务器无法上传图片解决办法_PHP教程

    主要目的就是测试我的php.ini没有设置upload_dir_tmp的值的时候,上传的文件临时保存在哪里的,经过这个测试发现原来在不配置php.ini的upload_dir_tmp的值的时候,默认的 ...

最新文章

  1. CSS超出隐藏并且能滚动
  2. python学习环境安装_python学习系列----环境的安装
  3. 【正一专栏】故意豪宅纵火的保姆会判死刑吗?
  4. Android ViewModel+liveData+lifecycle+databinding打造MVVM
  5. 学习 WCF (1)--基础篇
  6. 我的机器人现在无处可去。 无家可归。 无服务器。
  7. CSDN挑战编程——《数学问题》
  8. Maven项目发布的配置
  9. webserver接口_SpringBoot内置源码解析WebServer初始化过程
  10. 中科院开源 RISC-V 处理器“香山”流片,已成功运行 Linux
  11. mongodb常用操作语句
  12. 【BZOJ3110】【codevs1616】K大数查询,权值线段树套普通线段树
  13. 调整DOSBOX窗口大小
  14. 邮票面值设计java_邮票面值设计
  15. Laravel 学习笔记之文件上传
  16. 试用officescan 10.5
  17. 计算机组成原理微指令cpth,计算机组成原理(西安理工大学)实验二 CPTH模型机综合实验——微控制器实验.doc...
  18. 电动自行车的2020:红利、分化、意外、质疑
  19. 数车计算机编程教学caxa,CAXA数控车(数控车床编程工具)V2018.1.0 正式版
  20. 商务与经济统计阅读笔记2

热门文章

  1. 如何使用appletviewer
  2. COOX基础培训之RS
  3. [Java笔记13] 日期与时间
  4. C++练习笔记STL模板库之常用算法1
  5. UE4 蓝图设置怪物自动寻路
  6. 「自控原理」5.2 频域稳定判据、频域分析
  7. 中文/英文 文本相似度/文本推理/文本匹配数据集汇总(SNLI、MSRP、MultiNLI、Quora、SciTail、SICK、STS、CCKS2018、LCQMC、OCNLI、XNLI)
  8. 学习在虚拟机Linux上写c语言代码
  9. 如何去掉Windows7开机那个烦人的360安全卫士提示窗口
  10. Delphi最新版电子体温单源码(免控件)