zabbix--监控MySQL性能
Zabbix 自带模板监控 MySQL 性能
通过自带的 Template DB MySQL 模板监控 MySQL 性能
具体步骤:
1)创建脚本存放目录并编辑脚本
# mkdir /etc/zabbix/script
# vim /etc/zabbix/script/mysql_status.sh //编辑脚本
#!/bin/bash
#Desc:zabbix 监控 MySQL 状态
#Date:--
#by:Lee-YJ #主机
HOST="localhost"
#用户
USER="root"
#密码
PASSWORD="IjRMv3l6TQIEjvb9nIX5"
#端口
PORT=""
#MySQL连接
CONNECTION="mysqladmin -h ${HOST} -u ${USER} -P ${PORT} -p${PASSWORD}" if [ $# -ne "" ];then
echo "arg error!"
fi case $ in
Uptime)
result=`${CONNECTION} status >/dev/null |awk '{print $2}'`
echo $result
;;
Questions)
result=`${CONNECTION} status >/dev/null |awk '{print $6}'`
echo $result
;;
Com_update)
result=`${CONNECTION} extended-status >/dev/null |grep -w "Com_update" |awk '{print $4}'`
echo $result
;;
Slow_queries)
result=`${CONNECTION} extended-status >/dev/null |grep -w "Slow_queries" |awk '{print $4}'`
echo $result
;;
Com_select)
result=`${CONNECTION} extended-status >/dev/null |grep -w "Com_select" |awk '{print $4}'`
echo $result
;;
Com_rollback)
result=`${CONNECTION} extended-status >/dev/null |grep -w "Com_rollback" |awk '{print $4}'`
echo $result
;;
Com_insert)
result=`${CONNECTION} extended-status >/dev/null |grep -w "Com_insert" |awk '{print $4}'`
echo $result
;;
Com_delete)
result=`${CONNECTION} extended-status >/dev/null |grep -w "Com_delete" |awk '{print $4}'`
echo $result
;;
Com_commit)
result=`${CONNECTION} extended-status >/dev/null |grep -w "Com_commit" |awk '{print $4}'`
echo $result
;;
Bytes_sent)
result=`${CONNECTION} extended-status >/dev/null |grep -w "Bytes_sent" |awk '{print $4}'`
echo $result
;;
Bytes_received)
result=`${CONNECTION} extended-status >/dev/null |grep -w "Bytes_received" |awk '{print $4}'`
echo $result
;;
Com_begin)
result=`${CONNECTION} extended-status >/dev/null |grep -w "Com_begin" |awk '{print $4}'`
echo $result
;;*)
echo "Usage:$0(Uptime|Questions|Com_update|Slow_queries|Com_select|Com_rollback|Com_insert|Com_delete|Com_commit|Bytes_sent|Bytes_received|Com_begin)"
;;
esac
# chmod +x /etc/zabbix/script/mysql_status.sh //给脚本赋予执行权限
2)修改zabbix-agent配置文件,默认有一个MySQL的子配置文件,直接编辑该文件即可
# vim /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf
#获取MySQL性能指标,这个是上一步编辑好的脚本
UserParameter=mysql.status[*],/etc/zabbix/script/mysql_status.sh $
#获取MySQL运行状态
UserParameter=mysql.ping,mysqladmin -u root -h localhost -pIjRMv3l6TQIEjvb9nIX5 ping >/dev/null | grep -c alive
#获取MySQL版本
UserParameter=mysql.version,mysql -V
3)重启 zabbix-agent
# service zabbix-agent restart
4)Web界面配置、点击需要配置的主机,进去添加链接模板,自带的Template DB MySQL

5)配置完成后等一会儿就可以查看到监控主机的MySQL监控信息

查看监控主机的 MySQL bandwidth 图形

查看监控主机的 MySQL operations 图形

说明:如果发现监控没有数据,请排查如下问题
1. zabbix客户端是否重启
2. 脚本是否有执行权限
3. 数据库是否有权限
4. 环境变量是否有问题
附 agent 端自动配置脚本
#!/bin/bash
#Desc:自动部署zabbix 监控 MySQL 状态 agent端 说明执行改脚本需要传入主机、用户名、密码、端口信息。
#Date:--
#by:Lee-YJ #MySQL连接信息
function MySQLInfo {
read -p "主机:" HOST
read -p "用户:" USER
read -p "密码:" PASSWORD
read -p "端口:" PORT
} #创建mysql_status脚本
function MySQLScript {
cat >>/etc/zabbix/script/mysql_status.sh<<EOF
#!/bin/bash
#Desc:zabbix 监控 MySQL 状态
#Date:--
#by:Lee-YJ #主机
HOST=$HOST
#用户
USER=$USER
#密码
PASSWORD=$PASSWORD
#端口
PORT=$PORT
#MySQL连接
CONNECTION="mysqladmin -h ${HOST} -u ${USER} -P ${PORT} -p${PASSWORD}" if [ \$# -ne "" ];then
echo "arg error!"
fi case \$ in
Uptime)
result=\`\${CONNECTION} status >/dev/null |awk '{print \$2}'\`
echo \$result
;;
Questions)
result=\`\${CONNECTION} status >/dev/null |awk '{print \$6}'\`
echo \$result
;;
Com_update)
result=\`\${CONNECTION} extended-status >/dev/null |grep -w "Com_update" |awk '{print \$4}'\`
echo \$result
;;
Slow_queries)
result=\`\${CONNECTION} extended-status >/dev/null |grep -w "Slow_queries" |awk '{print \$4}'\`
echo \$result
;;
Com_select)
result=\`\${CONNECTION} extended-status >/dev/null |grep -w "Com_select" |awk '{print \$4}'\`
echo \$result
;;
Com_rollback)
result=\`\${CONNECTION} extended-status >/dev/null |grep -w "Com_rollback" |awk '{print \$4}'\`
echo \$result
;;
Com_insert)
result=\`\${CONNECTION} extended-status >/dev/null |grep -w "Com_insert" |awk '{print \$4}'\`
echo \$result
;;
Com_delete)
result=\`\${CONNECTION} extended-status >/dev/null |grep -w "Com_delete" |awk '{print \$4}'\`
echo \$result
;;
Com_commit)
result=\`\${CONNECTION} extended-status >/dev/null |grep -w "Com_commit" |awk '{print \$4}'\`
echo \$result
;;
Bytes_sent)
result=\`\${CONNECTION} extended-status >/dev/null |grep -w "Bytes_sent" |awk '{print \$4}'\`
echo \$result
;;
Bytes_received)
result=\`\${CONNECTION} extended-status >/dev/null |grep -w "Bytes_received" |awk '{print \$4}'\`
echo \$result
;;
Com_begin)
result=\`\${CONNECTION} extended-status >/dev/null |grep -w "Com_begin" |awk '{print \$4}'\`
echo \$result
;;
*)
echo "Usage:\$0(Uptime|Questions|Com_update|Slow_queries|Com_select|Com_rollback|Com_insert|Com_delete|Com_commit|Bytes_sent|Bytes_received|Com_begin)"
;;
esac
EOF
chmod +x /etc/zabbix/script/mysql_status.sh
} #配置agent mysql配置文件
function Config {
cp /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf{,back}
cat >/etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf<<EOF
# 获取MySQL性能指标,这个是上一步编辑好的脚本
UserParameter=mysql.status[*],/etc/zabbix/script/mysql_status.sh \$
# 获取MySQL运行状态
UserParameter=mysql.ping,mysqladmin -u $USER -h $HOST -p$PASSWORD ping >/dev/null | grep -c alive
# 获取MySQL版本
UserParameter=mysql.version,mysql -V
EOF
} function main {
#创建脚本存放路径
mkdir /etc/zabbix/script
MySQLInfo
MySQLScript
Config
#重启zabbix-agent
service zabbix-agent restart
} main
auto_config_agent.sh
zabbix--监控MySQL性能的更多相关文章
- zabbix监控mysql性能
使用zabbix监控mysql的三种方式 1.只是安装agent 2.启用模板监控 3.启用自定义脚本的模板监控 zabbix中默认有mysql的监控模板.默认已经在zabbix2.2及以上的版本中. ...
- 分布式数据存储 - Zabbix监控MySQL性能
Zabbix如何监控mysql性能,我们可以使用mysql自带的模板,可以监控如下内容:OPS(增删改查).mysql请求流量带宽,mysql响应流量带宽,最后会附上相应的监控图! 编写check_m ...
- Zabbix监控mysql performance
介绍 zabbix监控mysql性能,使用zabbix自带的mysql监控模板,可以监控以下内容OPS(增删改查).mysql慢查询数量.mysql请求\响应流量带宽 配置 新建mysql监控用户 G ...
- 使用zabbix监控mysql的三种方式
使用zabbix监控mysql的三种方式 1.只是安装agent 2.启用模板监控 3.启用自定义脚本的模板监控 zabbix中默认有mysql的监控模板.默认已经在zabbix2.2及以上的版本中. ...
- zabbix 监控MySQL
现在我来说一下我的监控环境 zabbix-3.0.3 MySQL-5.6.23 1.首先我们要登录MySQL,创建一个监控MySQL的用户 GRANT USAGE,PROCESS,SUPER,REPL ...
- Zabbix监控mysql配置及故障告警配置
本文主要介绍zabbix监控mysql的配置,包含使用zabbix自带模板监控mysql相关信息及自定义key监控mysql同步情况.同时介绍了触发器的创建及zabbix通过邮件方式告警配置. 一.配 ...
- Zabbix监控nginx性能的另外一种方式
Zabbix监控nginx性能的另外一种方式 nginx和php-fpm一样内建了一个状态页,对于想了解nginx的状态以及监控nginx非常有用,为了后续的zabbix监控,我们需要先启用nginx ...
- zabbix监控mysql最简单的方法
该实验基于我的上一篇文章监控第一台主机的基础上 首先,因为水平有限,我选择直接关闭了防火墙和SELinux. 环境: 两台centos7,服务器端IP是192.168.200.128(以下简称主机), ...
- mytop安装,使用mytop监控MySQL性能
本文主要描述mytop安装,安装过程中可能出现的报错,以及使用mytop监控MySQL性能. 欢迎转载,请注明作者.出处. 作者:张正 blog:http://space.itpub.net/2635 ...
- Zabbix 监控 Mysql 状态
简介: 如何使用 Zabbix 来监控 Mysql 状态 ? Zabbix 有自带监控 Mysql 的模板,但是却不能直接使用.. 需要我们根据模板提供的 Key 自己写脚本获取数据 1.查看都有哪些 ...
随机推荐
- Flask 中的 request 之 先知道有这么个东西
每个框架中都有处理请求的机制(request),但是每个框架的处理方式和机制是不同的 为了了解Flask的request中都有什么东西,首先我们要写一个前后端的交互 基于HTML + Flask 写一 ...
- centos7 中iptables、firewalld 和 netfilter 的关系
centos7系统使用firewalld服务替代了iptables服务,但是依然可以使用iptables来管理内核的netfilter 但其实iptables服务和firewalld服务都不是真正的防 ...
- 石锤了!google彻底断供华为,只能加速鸿蒙生态的形成
前言 操作系统是当今科技行业的灵魂,而即将推出这款操作系统是一个集电脑.手机.汽车等设备于一体的系统.如今手机行业里已经是一片红海了,竞争相当激烈,但是竞争归竞争,但是一旦扯上别的事就更麻烦了,像华为 ...
- Shell脚本之三 传递参数
我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推-- 实例 向脚本传递三个参数,并分 ...
- scala eval
package com.jason case class JJ(d: Double*) object Ss { def main(args: Array[String]): Unit = { impo ...
- 读《PMI 分析手册》
目录 读<PMI 分析手册> 官方 PMI 基本概况 官方制造业 PMI 官方非制造业 PMI 综合 PMI 产出指数 PMI 分析框架 PMI 与经济周期 官方 PMI 分析 参考研报 ...
- Rancher 构建 CI/CD 自动化流程 - 动态配置 Jenkins-slave(二)
一.说明 1.1 说明 前面介绍采用 Jenkinsfile + KubernetesPod.yaml 方式进行部署项目(Rancher 构建 CI/CD 自动化流程 - 动态配置 Jenkins-s ...
- idea(2018.3.5)破解
第一步:下载idea,https://www.jetbrains.com/idea/download/#section=windows,双击进行安装 第二步:下载破解的jar包:链接:https:// ...
- Java并发编程基础-Unsafe
前言:Unsafe是Java中一个底层类,包含了很多基础的操作,比如数组操作.对象操作.内存操作.CAS操作.线程(park)操作.栅栏(Fence)操作,JUC包.一些三方框架都使用Unsafe类来 ...
- c++11多线程记录0
两种并发编程模型 多进程 进程间通信常用的几种方式: 文件 管道 消息队列 多线程 一个进程中存在的多个线程,通常通过共享内存来通信,(说的非常非常粗俗,就是通过类似"全局变量"的 ...