龙空技术网

推荐一个贺大师的slowquery工具--分析慢查询日志及邮件告警

波波说运维 1137

前言:

现时大家对“mysql告警日志”大致比较关切,大家都想要了解一些“mysql告警日志”的相关内容。那么小编也在网络上搜集了一些有关“mysql告警日志””的相关文章,希望姐妹们能喜欢,咱们一起来了解一下吧!

概述

github:

今天主要分享一下贺大师的slowquery工具,主要用于分析慢查询日志及邮件告警。

这里参考了开源工具Anemometer图形展示思路,并且把小米Soar工具集成进去,开发在页面上点击慢SQL,就会自动反馈优化建议,从而降低DBA人肉成本,同时也支持自动发送邮件报警功能。

agent客户端慢日志采集分析是结合Percona pt-query-digest工具来实现。

下面介绍下部署过程。

一、监控端及被监控端安装percona-toolkit工具

1、检查和安装与Perl相关的模块

PT工具是使用Perl语言编写和执行的,所以需要系统中有Perl环境。

依赖包检查命令为:

 rpm -qa perl-DBI perl-DBD-MySQL perl-Time-HiRes perl-IO-Socket-SSL

如果有依赖包缺失,可以使用下面的命令安装:

yum -y install perl-DBI perl-DBD-MySQL perl-Time-HiRes perl-IO-Socket-SSL perl-TermReadKey.x86_64 perl-Digest-MD5.x86_64


2、安装pt工具包

 rpm -ivh percona-toolkit-3.0.13-1.el7.x86_64.rpm


3、验证

安装后,可以通过下面的命令确认是否安装成功:

# pt-query-digest --help# pt-table-checksum --help


如果命令提示可以正常显示,则说明pt工具已经正常安装和使用了。


二、php web mysql环境的搭建

监控端的mysql已经搭建,这里不介绍部署过程

 yum install httpd php php-mysql -y



三、安装Slowquery并配置

1、移动slowquery到web目录

 mv slowquery /var/www/html/


2、初始化数据

进入slowquery/slowquery_table_schema目录下,导入dbinfo_table_schema.sql和slowquery_table_schema.sql表结构文件到你的运维管理机MySQL里。

注:dbinfo表是保存生产MySQL主库的配置信息。

mysql -uroot -p -e 'create database slowquery default character set utf8;'mysql -uroot -p slowquery < /var/www/html/slowquery/slowquery_table_schema/dbinfo_table_schema.sqlmysql -uroot -p slowquery < /var/www/html/slowquery/slowquery_table_schema/slowquery_table_schema.sql

3、录入要监控的MySQL主库配置信息。

3.1、监控端及被监控端增加slowquery账号

set global validate_password_policy=0; grant all privileges on *.* to slowquery@'%' identified by 'xxxxx';


3.2、监控端录入要监控的MySQL主库配置信息

insert into slowquery.dbinfo values (1,'xx.xx.xx.69','fsl_prod','slowquery','xxx',3306);insert into slowquery.dbinfo values (2,'xx.xx.xx.94','tms_prod','slowquery','fxxx',3306);


4、修改配置文件config.php

将里面的配置改成你的运维管理机MySQL的地址(用户权限最好是管理员)。

<?php//将里面的配置改成你的运维管理机MySQL的地址 $con = mysqli_connect("xx.xx.xx.94","slowquery","密码","fsl_prod","3306") or die("数据库链接错误".mysqli_connect_error()); mysqli_query($con,"set names utf8");?>


5、修改配置文件soar_con.php(这个功能有点问题,暂时测试不通过)

将里面的配置改成你的运维管理机MySQL的地址(用户权限最好是管理员)。

<?php//-test-dsn soar测试环境,用来分析SQL使用$test_user='slowquery';$test_pwd='密码';$test_ip='xx.xx.xx.94';$test_port='3306';$test_db='slowquery';?>


篇幅有限,这块内容就介绍到这了,后面会介绍下被监控端部署部分,感兴趣的朋友可以关注下~


标签: #mysql告警日志