首页 > 数据库 >结合zabbix监控mysql,让mysql性能飙升

结合zabbix监控mysql,让mysql性能飙升

时间:2024-06-21 14:57:22浏览次数:28  
标签:语句 mysql 飙升 zabbix sql 优化 cpu

    前段时间客户的系统突然出现mysql只读集群cpu飙升的情况,飙升到最高点的时候,甚至导致应用服务器GC,幸好应用有备份服务器,流量直接切过去,客户也无感知。但是这个只是临时的解决办法,总归要找到具体的原因,和开发同事查了两天的应用日志和mysql的慢日志,始终无法定位到具体的问题。最后想到,既然这个问题会时不时出现,那能不能写一个脚本结合zabbix监控mysql消耗cpu最高的线程,然后把这些线程执行的语句调出来,这样开发同事就可以针对性的进行优化了。经过调研,这个方案确实可行,说干就干(具体脚本的实现和部署我已经在我的github上公开了,感兴趣的朋友拿走不谢:https://github.com/zhenghan008/MonitorAbnormalSql),效果果然是杠杆的。很快就找出了消耗cpu比较高的sql语句,结合zabbix的报警,开发同事很快就收到需要优化的sql语句了,结果发现就是其中一个功能,用户那边只要打开一个页面,后端就会轮询的去查询mysql的一个表,而这个表数据量越来越大,而且相关字段没有做索引,结果这个语句消耗的cpu就越来越高了。原因找到了,自然就好解决了。只需增加索引就可以了。至此问题顺利解决。后面也有出现几次异常sql报警,也很快就收到报警并迅速解决了。下面看看效果,优化后,mysql进程消耗cpu明显下降,性能得到较大提升。可以看到6月8号没优化前,mysql最高的时候cpu达到90%多,优化后,进程的cpu明显下降了,应用服务器也没再出现GC的情况。至此,问题算是完美解决了!

 

标签:语句,mysql,飙升,zabbix,sql,优化,cpu
From: https://www.cnblogs.com/tester-zhenghan/p/18260487

相关文章

  • 【Mysql】MySQL存储引擎的介绍
    文章目录前言一、存储引擎简介二、使用场景三、总结前言在处理大量数据的系统中,如何快速准确的获取所需的信息是一个重要的问题。这就像在一个巨大的图书馆中寻找一本书,如果没有目录或指南,这将是一项艰巨的任务。在数据库中,我们使用索引来解决这个问题。本文将介绍M......
  • 五天搞定Mysql基础知识-Day05
    学习目标:        1、MySQL常用内置函数        2、了解存储过程        3、了解视图        4、了解事务        5、了解索引        6、掌握基于命令行的SQL使用第一章MySQL内置函数一、字符串函数1、拼接字符串......
  • MySQL触发器基本结构
    1修改分隔符符号delimiter$$可以修改成$$//都行2创建触发器函数名称createtrigger函数名3什么样的操作触发,操作那个表after:....之后触发before:....之前触发inser:插入被触发uodate:修改被触发delete:删除被触发on表名实例:在users表被添加信息后触发af......
  • JavaWeb——Mysql的启动/登录/卸载
    目录1.Mysql服务器2.Mysql的简单使用2.1启动Mysql:2.2登录Mysql2.3退出3.连接别人的数据库4.卸载mqsql1.Mysql服务器安装了Mysql的计算机都成为Mysql服务器 2.Mysql的简单使用2.1启动Mysql:第一种方法:搜索服务,找到Mysql80,右击打开;第二种方法:输入cmd,右击命......
  • Mysql渗透及提权,命令执行
    查询用户selectuser()查询数据库版本selectversion()查询当前操作系统select@@version_compile_os查询读取数据库路径select@@datadir查询MYSQL安装路径select@@basedir查询plugin的路径select@@plugin_dirMysql-UDF提权https://blog.csdn.net/qq_48201589/......
  • MySQL存储引擎
    一、存储引擎定义存储引擎是MySQL数据库的组件,负责执行实际的数据IO操作(数据的存储和提取)。工作在文件系统之上,数据库的数据会先传输到存储引擎,再按照存储引擎的存储格式保存到文件系统。常用的存储引擎:InnoDB MyISAM二、MyISAM和InnoDBMyISAM1、MyISAM相关特性MyISA......
  • linux上安装MySQL的详细教程
    一、检查是否安装过mysql   rpm-qa|grepmysql(ps:输入命令没内容就是没有安装)二、安装mysql包yum-yinstallmysql57-community-release-el7-10.noarch.rpm出现下边这个就表示成功了三、安装mysql1.首先要进行的工作就是:(该命令作用就是导入MySQL官方的......
  • Mysql慢查询及优化(全网最详细!!!)
    一、定位慢SQL1.首先确认是否开启了慢查询2.设置慢查询的时间限制3.查询慢查询日志可定位具体的慢sql4.相关sql查询5.用Explain分析具体的sql语句6.用Explain字段介绍二、慢SQL优化1.不使用子查询2.读取适当的记录LIMITM,N3.分组统计可以禁止排序4.禁止不必要......
  • [Mysql] 的基础知识和sql 语句.教你速成(上)——逻辑清晰,涵盖完整
    目录前言上篇的内容概况下篇的内容概况 数据库的分类关系型数据库常见的关系型数据库系统非关系型数据库1.键值对数据库(Key-ValueStores)特点:常见的键值对数据库:2.文档数据库(DocumentStores)特点:常见的文档数据库:3.列族数据库(Column-FamilyStores)特点:常......
  • windows安装MySQL
    windows安装MySQL1.下载MySQL的安装包这里以mysql5.7.35为例进行安装演示用安装包放在下面mysql-5.7.35-winx64.zip2.解压安装包到需要安装的路径3.在解压的文件中创建my.ini[mysqld]basedir=MySQL路径\datadir=MySQL路径\data\port=3306skip-grant-tables4.安装My......