资讯专栏INFORMATION COLUMN

zabbix 监控mysql指标,支持variables、STATUS下所有变量

Wildcard / 858人阅读

摘要:获取版本获取中性能指标这个是上面定义好的脚本获取中的参数获取运行状态管理端设置参数注意事项配置的用户名权限是否允许是否已配置脚本目录

最近在处理zabbix 监控mysql的时候碰到一些问题,现做记录;
默认的脚本里面没有用户名密码信息,如果设置了root不允许使用空密码本地登录时会出错,就接受不到数据;
具体可以在zabbix server或proxy用agent_get测试一下

zabbix_get -s mysql_server -k mysql.ping
如果返回0,但是mysql服务是正常启动的则是有问题的

获取不到数据还有可能是在mysql5.6版本后,直接用命令行中携带密码是会有警告


解决办法是在原命令后面加入

2>/dev/null

下面提供sh脚本和config

check_mysql.sh

#!/bin/bash
# -------------------------------------------------------------------------------
# FileName:    check_mysql.sh
# Revision:    1.0
# Date:        2019-3-21
# Author:      xsj
# Email:       soft_xiang@qq.com
# Description: 
# Notes:       ~
# -------------------------------------------------------------------------------
# Copyright:   2019 (c) xsj
# License:     GPL
 
# 用户名
MYSQL_USER="root"
 
# 密码
MYSQL_PWD="xxx"
 
# 主机地址/IP
MYSQL_HOST="127.0.0.1"
 
# 端口
MYSQL_PORT="3306"

MYSQL_PATH="/usr/local/gwall/mysql/bin/mysql"

MYSQLADMIN_PATH="/usr/local/gwall/mysql/bin/mysqladmin"

# 数据连接
MYSQL_CONN="${MYSQL_PATH} -u${MYSQL_USER} -h${MYSQL_HOST} -P${MYSQL_PORT}"
MYSQLADMIN_CONN="${MYSQLADMIN_PATH} -u${MYSQL_USER} -h${MYSQL_HOST} -P${MYSQL_PORT}"
 
# 参数是否正确
if [ $# -ne "1" ];then 
    echo "arg error!" 
fi 

# variables 对应的key类似 mysql.status[Var_max_connections]
# status 对应的key类似 mysql.status[Uptime]
case $1 in
  Var_*)
    $MYSQL_CONN -e "show global variables" 2>/dev/null | awk "$1 ~ /""${1#*Var_}""$/ {print $2}" ;;
  Version)
    $MYSQLADMIN_PATH -V | awk -F "[ ,]" "{print $6}" ;;
  Ping)
    $MYSQLADMIN_CONN ping 2>/dev/null | wc -l ;;
  Status_*)
    $MYSQL_CONN -e "show global status" 2>/dev/null | awk "$1 ~ /""${1#*Status_}""$/ {print $2}" ;;
  *)
    echo "Usage:$0(Status_Uptime|Var_max_connections);其中 Status_ 后支持所有GLOBAL STATUS中的key;Var_ 后支持所有GLOBAL variables中的key。" ;;
esac

status_mysql.conf

# 获取mysql版本
UserParameter=mysql.version,/etc/zabbix/shell/check_mysql.sh Version
# 获取mysql GLOBAL STATUS中性能指标,这个是上面定义好的脚本
UserParameter=mysql.status[*],/etc/zabbix/shell/check_mysql.sh "Status_"$1
# 获取mysql GLOBAL variables中的参数
UserParameter=mysql.var[*],/etc/zabbix/shell/check_mysql.sh "Var_"$1
# 获取mysql运行状态
UserParameter=mysql.ping,/etc/zabbix/shell/check_mysql.sh Ping

zabbix web管理端设置参数

注意事项:
配置的mysql用户名权限是否允许
zabbix_agent.conf是否已配置脚本目录

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/48624.html

相关文章

  • zabbix监控redis相关指标支持info所有参数

    摘要:最近在处理监控,监控时发现官方并没有提供相关的模板,自己参照之前的监控改写了一个。状态信息管理端配置模板只设置了部分,所有下的参数都支持 最近在处理zabbix 监控,监控redis时发现官方并没有提供相关的模板,自己参照之前mysql的监控改写了一个。主要支持 info命令下所有参数,自动发现有key的数据库,并提供info中的参数数据特点:较为通用,代码简洁需要设置zabbix a...

    马永翠 评论0 收藏0
  • zabbix 监控mysql

    摘要:添加模板自带模板配置主机点击进入主机模板选择添加更新添加修改添加载入的配置文件也可以直接写在中添加到目录内容获取版本获取性能指标这个是之前定义好的脚本获取运行状态备注等配置信息最好写在配置文件中比如添加脚本到脚本网上 zabbix 3.0.4 1.添加模板(zabbix自带mysql模板) 配置 -> 主机->点击进入主机->模板->选择Template App MySQL ->添加-...

    LeviDing 评论0 收藏0
  • OneAPM 云监控部署与试用体验

    摘要:作为骨灰级粉丝,一直以来对第三方监控都是拒绝的。例如白屏时间首屏时间脚本错误网页加载就绪时间各种浏览器的访问情况,甚至能了解不同浏览器运营商地区用户的访问状况。脚本错误在所难免,错误进一步导致网站部分功能无法使用。 作为 Zabbix 骨灰级粉丝,一直以来对第三方监控(APM)都是拒绝的。一来觉得收费,二来担心数据被人所知,三来觉得 Zabbix 牛逼到无可取代。但是,随着 APM 市...

    Tecode 评论0 收藏0
  • 如何监控 Tomcat?Zabbix 与 Cloud Insight 对比

    摘要:如果一个主机有及其他类型的监控项,则只有类型的监控项可以通过进行监控。当在上的一个监控项值更新了,或代理将连接请求该值,因为不会缓存任何值或代理可以通过控制连接的进程。在内部通过控制选项使用多线程启动。 JVM 监控工具有很多,像命令 jstat,jmap,jstack,jinfo 可以根据不同需求查看不同的系统信息,还有图像化界面 jconsole,都是很方便的工具。这些可以参考 J...

    learning 评论0 收藏0
  • UPYUN Open Talk :同盾,从零打造千万级实时风控云服务

    摘要:同盾技术总监张新波在第二期移动时代互联网金融的架构趋势中阐述了同盾是如何从零开始打造千万级实时风控云服务,具体介绍了同盾系统平台构建过程中主要需要解决的三大难题,以及解决这些问题的具体时实践过程。 同盾科技,是由阿里、Paypal 反欺诈专家创建的,国内第一家风险控制与反欺诈云服务提供商,其涉及领域包括电商、B2B、互联网金融、游戏等。同盾技术总监张新波在 UPYUN Open ...

    malakashi 评论0 收藏0

发表评论

0条评论

Wildcard

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<