MySQL 快速定位性能问题

 
一、性能查看几款小工具:
Top 
查看:观察 load average :1分钟,5分钟,15分钟的平均负载值
1. us% 用户使用的 CPU 占比,如果 us% 太高, 极有可能索引使用不当。
2. sy% 系统内核使用的CPU占比,如果sy% 太高,要注意MySQL 连接数以及MySQL 的锁信息。
3. wa% io 使用 CPU 的占比,如果wa% 太高,要关注MySQL是否使用了硬盘临时表,或者大量的刷盘等操作,
也有可能是硬盘太慢,或硬盘故障,可以使用iostat 等工具进行观察。
Mpstat
各个逻辑CPU 之间的负载是否均衡,(可能是中断不均衡导致性能问题),可以使用 mpstat 命令来进行详细观察。
Vmstat
通过vmstat 来观察每秒的进程、内存、swap、io、cpu 等详情情况。
Iostat -x
关注IO 使用情况  iostat -x 
1.rrqm/s  #每秒读取的扇区数。
2.wrqm/s #每秒写入的扇区数。
3.avgrq-sz #平均请求扇区的大小
4.qvgqu-sz #是平均请求队列的长度。
5.await #每一个IO 请求的相应时间。
6.%util #在统计时间内所有处理IO 时间,除以总共统计时,暗示了设备的繁忙程度。
二、MySQL 查看
1. tps,qps,并发连接数(thread_connected)、并发活跃线程数(thread_running)、临时表(tmp_disk_tables)、锁(locks_waited,Innodb_row_lock*)等指标。
2.通过 show processlist ,查看当前是否有不良线程状态,例如:copy to tmp table 、creating sort index、sorting result,creating tmp table、长时间的 sending data等。
3.关注InnoDB buffer pool page 的使用情况,主要是InnoDB pages_free、InnoDB wait_free 两个。
4.关注 InnoDB 的 redo_log 刷新延迟,尤其是 checkpoint 延迟情况,并关注 unpurge list 大小。
5.关注 innodb status 中是否有 long semaphore wait 情况的出现。
6.观察是否有大事务的阻塞。
参考: 田帅萌 3306 π
https://github.com/enmotplinux/old_mysql_20181224/blob/master/mysql_inspection.py
https://github.com/enmotplinux/old_mysql_20181224/blob/master/sos.sh

转载于:https://www.cnblogs.com/Camiluo/p/10187344.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/366134.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用Google GSON:额外的赠品:第二部分

如果您错过了系列的第一篇文章 ,我们将继续上一篇文章的“使用GSON ” ,这里是link 。 因此,这里我们进行另一系列的讨论。 版本支持 如果要维护一个对象的多个版本以进行JSON转换,则Google GSON库具有不错的Since注释。 该注释可…

Python开发【第2节】【Python运算符】

Python语言支持以下类型的运算符: 算术运算符比较(关系)运算符赋值运算符逻辑运算符位运算符成员运算符身份运算符运算符优先级1、算术运算符 假设变量a 10,变量b 21: 运算符描述实例加 - 两个对象相加a b 输出结果 31-减 - 得…

mybatis-plus分页查询_SpringBoot + MyBatisPlus 快速入门

Hello,大家好!前面与大家分享了一次如何搭建Java项目脚手架,并且送给大家一个基础项目模板。那今天与大家分享如何使用这个基础项目,也就是快速上手 SpringBoots ➕ MyBatisPlus。 项目 / 目录结构 天津商业大学学院信息 这是一张天津商业大学…

php 获取每年的节假日,shell获取每年农历节日的日期

原创内容,转载请注明出处:https://www.myzhenai.com.cn/post/3711.html我打算自己写一个每年节日就自动在网站上展示灯笼的源码功能,但是这里最重要的是要获得每年春节、端午节、中秋节等节日的日期,因为要自己写这判断这些日期的…

AJAX跨域问题解决方法(1)——禁止浏览器进行跨域限制

思路:通过命令行修改浏览器启动参数,使得浏览器不进行跨域检查,从而允许跨域 方法:命令行参数启动浏览器后添加参数--disable-web-security 例:chrome --disable-web-security --disabl-web-security参数的作用是禁…

Android Studio 管理所有程序退出

import android.app.Activity; import java.util.ArrayList; import java.util.List;public class fa {public static List<Activity> activitieanew ArrayList<>();public static void add(Activity act){activitiea.add(act);//在创建活动是加入}public static v…

项目学生:Web服务集成

这是Project Student的一部分。 其他职位包括带有Jersey的 Web服务 客户端&#xff0c;带有Jersey的 Web服务服务器 &#xff0c; 业务层 &#xff0c; 具有Spring数据的持久性和分片集成测试数据 。 早些时候&#xff0c;我们成功地针对持久性/业务层&#xff08;使用嵌入式H…

python爬虫requests实战_Python爬虫之requests库网络爬取简单实战

实例1&#xff1a;直接爬取网页 实例2 &#xff1a; 构造headers&#xff0c;突破访问限制&#xff0c;模拟浏览器爬取网页 实例3 &#xff1a; 分析请求参数&#xff0c;构造请求参数爬取所需网页 实例4&#xff1a; 爬取图片 实例5&#xff1a; 分析请求参数&#xff0c;构造…

某制冷设备制造厂商

某制冷设备制造厂商 该公司是一家以钣金加工&#xff0c;制冷设备制造、销售为主的公司&#xff0c;其产品广泛应用于高级宾馆、饭店及大型餐饮设施等。销售网点遍及日本、北美、欧洲及东南亚&#xff0c;产品深受世界各地用户的欢迎。 该公司原先使用的是TPICS生产管理系统&am…

原生JS实现的DOM操作笔记(草稿整理)

原生JS实现的DOM一系列操作参考&#xff1a; 原生JavaScript封装DOM库siblings: 原生JS-查找相邻的元素-siblings方法的实现addClass,removeClass,hasClass,toggleClass&#xff1a;原生js添加删除class原生js添加删除class 代码如下&#xff1a; var dom {/** 功能说明&…

简单的Gradle Java插件自定义

正如我在“ 用Gradle构建Java的初步了解”一文中所展示的那样&#xff0c;当人们使用Java插件并将文件和目录放置在该插件期望的位置时&#xff0c; Gradle尤其适用于构建Java应用程序的基础知识&#xff08;惯例-基于项目的布局 &#xff09;。 但是&#xff0c;并非总是有一种…

k8s 重点

这几个月参与了几场面试&#xff0c;设计了多道面试题&#xff0c;觉得可以综合考察应聘人对 kubernetes的掌握情况。在这里分享下&#xff0c;供应聘人自查以及其他面试官参考。 这些面试题的设计初衷并不是考察 kubernetes 的使用。这种笔者认为较为流于表面&#xff0c;因为…

python中print的用法_python中print用法

print用法 参考文档&#xff1a; https://blog.csdn.net/sinat_28576553/article/details/81154912 目录 一、print()函数概述 二、变量的输出 三、数据的格式化输出 3.1 %字符 3.2 最小字段宽度和精度 3.3 转换标志 3.4 格式字符归纳 四、换行与防止换行 一、print()函数概述 …

java 播放.pcm文件,java播发PCM文件

java播放PCM文件import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import javax.sound.sampled.AudioFormat;import javax.sound.sampled.AudioSystem;import javax.sound.sa…

02 re模块

# re的工作是在python中执行正则表达式 import re# # find # result re.findall("\d", "baby的电话号是: 185123456789") # print(result) # # it re.finditer("\d", "baby123456789的电话号是: 185123456789") # for el in it: # …

网页中二维码识别规则

识别规则 这里采用的逻辑是截屏识别&#xff0c;当客户端发现用户在网页的img标签内进行长按操作时&#xff0c;会立刻截屏并且启动二维码识别算法。所以这里用于二维码识别的图片是截屏&#xff0c;而不是之前有人提到的img标签中的图片。 为什么要用截屏&#xff0c;这也是…

使用Mockito测试Spring组件

我认为&#xff0c;能够对弹簧组件进行单元测试而无需使用临时测试配置加载完整的弹簧上下文&#xff0c;这是一个很大的优势&#xff0c;因为它干净&#xff0c;易于维护&#xff0c;编写速度更快&#xff0c;更改平滑。 实现此目标的一种方法是使用Mockito并告诉他用Mocks &…

python数字转换_Python实现中文数字转换为阿拉伯数字的方法示例

本文实例讲述了Python实现中文数字转换为阿拉伯数字的方法。分享给大家供大家参考&#xff0c;具体如下&#xff1a; 一、需求 今天写了三千二百行代码。 今天写了3200行代码。 两行意思相同&#xff0c;只是表达方式不太能够&#xff0c;统一掉。 二、原理 数字的特征是 数字 …

LeetCode第14题:最长公共前缀

题目描述 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀&#xff0c;返回空字符串 ""。 示例 1: 输入: ["flower","flow","flight"] 输出: "fl" 示例 2: 输入: ["dog","racecar"…

臭名昭著的sun.misc.Unsafe解释

Java虚拟机的最大竞争对手可能是托管C&#xff03;等语言的Microsoft CLR 。 CLR允许编写不安全的代码作为低级编程的入口&#xff0c;这在JVM上很难实现。 如果您需要Java中的此类高级功能&#xff0c;则可能会被迫使用JNI &#xff0c;这需要您了解一些C并Swift导致代码紧密耦…