锋盈数科-知识库 Logo
首页
软件开发
计算机基础
Hello Halo
新手必读
关于本知识库
登录 →
锋盈数科-知识库 Logo
首页 软件开发 计算机基础 Hello Halo 新手必读 关于本知识库
登录
  1. 首页
  2. zabbix
  3. zabbix监控mysql服务器

zabbix监控mysql服务器

0
  • zabbix
  • 发布于 2024-12-16
  • 6 次阅读
黄健
黄健

点击蓝字 关注我们


监控指标:

实例状态

连接数

流量

增删改查

缓冲池大小与利用率

1、编写监控数据采集脚本

cat /etc/my.cnf #创建一个普通用户用于免交互

[mysql]

host=192.168.0.14

user=wp

password=MyNewPass4!

[mysqladmin]

host=192.168.0.14

user=wp

password=MyNewPass4!

[mysqld]

user = mysql

port = 3306

datadir = /var/lib/mysql

socket = /var/lib/mysql/mysql.sock

bind-address = 0.0.0.0

pid-file = /var/run/mysqld/mysqld.pid

character-set-server = utf8

collation-server = utf8_general_ci

log-error = /var/log/mysqld.log

max_connections = 10240

open_files_limit = 65535

innodb_buffer_pool_size = 1G

innodb_flush_log_at_trx_commit = 2

innodb_log_file_size = 256M

innodb_flush_method = O_DIRECT

interactive_timeout = 1800

wait_timeout = 1800

slave-parallel-type = LOGICAL_CLOCK

slave-parallel-workers = 8

master-info-repository = TABLE

relay-log-info-repository = TABLE

测试:

echo “show variables where Variable_name='max_connections';” \|mysql -N \|awk '{print $2}'

监控数据采集脚本:

cat userparameter_mysql.conf

连接数

UserParameter=mysql.max_connections,echo “show variables where Variable_name='max_connections';” \| mysql -N \| awk '{print $2}'

UserParameter=mysql.current_connections,echo “show global status where Variable_name='Threads_connected';” \| mysql -N \| awk '{print $2}'

缓冲池

UserParameter=mysql.buffer_pool_size,echo “show variables where Variable_name='innodb_buffer_pool_size';” \| mysql -N \|awk '{printf “%.2f”,$2/1024/1024/1024}'

UserParameter=mysql.buffer_pool_usage_percent,echo “show global status where Variable_name='Innodb_buffer_pool_pages_free' or Variable_name='Innodb_buffer_pool_pages_total';” \| mysql -N \| awk '{a[NR]=$2}END{printf “%.1f”,100-((a[1]/a[2])*100)}'

增删改查

UserParameter=mysql.status[*],echo “show global status where Variable_name='$1';” \| mysql -N \| awk '{print $$2}'

实例状态

UserParameter=mysql.ping,mysqladmin ping \| grep -c alive

UserParameter=mysql.version,mysql -V

mv userparameter_mysql.conf /etc/zabbix/zabbix_agentd.d/

systemctl restart zabbix-agent

在zabbix server测试是否能获取到值

/usr/local/zabbix/bin/zabbix_get -s 192.168.0.14 -p 10050 -k “mysql.status[ status[Com_select]”

2、创建模板

测试主机关联zabbix自带模板:

3、将运行MySQL的主机关联模板

删除之前模板,导入做好的模板mysql_templates:

4、监控mysql主从同步

(1)在Zabbix Agent端/data/sh目录创建Shell脚本:mysql_ab_check.sh,写入如下代码:

!/bin/bash

/usr/local/mysql/bin/mysql -uroot -e 'show slave status\G' \|grep -E “Slave_IO_Running\|Slave_SQL_Running”\|awk '{print $2}'\|grep -c Yes

(2)在客户端Zabbix_agentd.conf配置文件中加入如下代码:

UserParameter=mysql.replication,sh /data/sh/mysql_ab_check.sh

(3) Zabbix服务器端获取监控数据,如果返回值为2,则证明丛库I/O、SQL线程均为YES,表示主从同步成功:

/usr/local/zabbix/bin/zabbix_get -s 192.168.149.129 -k mysql.replication

(4) Zabbix WEB平台,在192.168.149.129 hosts中创建item监控项,如图13-24(a)、13-24(b)所示,单击右上角create item,Key填写Zabbix Agentd配置文件中的mysql.replication即可:

MYSQL主从监控项创建Graph图像,如图所示:

MYSQL主从监控项创建触发器,如图所示,MYSQL主从状态监控,设置触发器条件为key值不等于2即可,不等于2即表示MYSQL主从同步状态异常,匹配触发器,执行Actions:

以上,既然看到这里了,如果觉得不错,随手点个赞、在看、转发三连吧,如果想第一时间收到推送,也可以给我个星标⭐~谢谢你看我的文章,我们,下次再见。

原文链接: https://mp.weixin.qq.com/s/ix1UL-mKRC-TX9mQlXXGPQ

标签: #运维 80
相关文章

shell脚本一键部署Zabbix的实现步骤 2024-12-16 09:38

本文主要介绍了shell一键部署Zabbix的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧!

docker快速安装zabbix7.0 2024-12-16 09:38

1、安装docker (1)卸载旧版本 sudo apt-get remove docker docker-engine docker.io containerd runc (2)更新apt包索引并安装包以允许apt在HTTPS上使用存储库 sudo apt-get install -y apt-t

轻松搞定Zabbix监控部署,打造高效运维利器! 2024-12-16 09:38

点击蓝字 关注我们 安装环境: 系统:centos7.5 nginx版本:nginx-1.15.3.tar.gz php版本:php-5.6.36.tar.gz mysql版本:mysql-5.7 zabbix版本:zabbix-4.0.0.tar 1、部署Nginx 1.1、安装依赖包 wget

zabbix监控域名到期时间 2024-12-16 09:38

点击蓝字 关注我们 1、自定义监控项 在zabbix server端这里面创建一个监控项 cd /etc/zabbix/zabbix_agentd.d ``` # vi domain_certificate_check.conf ``` UserParameter=https.remaining

zabbix监控rabbitmq消息队列服务 2024-12-16 09:38

点击蓝字 关注我们 1、脚本文件 cat rabbitmq_queues.sh !/bin/bash source /etc/profile rabbitmqctl list_connections name state \|grep -Ev 'List\|name' >/tmp/rabbitmq_

zabbix监控mysql服务器 2024-12-16 09:38

点击蓝字 关注我们 监控指标: 实例状态 连接数 流量 增删改查 缓冲池大小与利用率 1、编写监控数据采集脚本 cat /etc/my.cnf #创建一个普通用户用于免交互 [mysql] host=192.168.0.14 user=wp password=MyNewPass4! [mysqlad

目录

IT 外包服务商

  • 意见投递
  • zyf6619

软件开发应用

主菜单

  • 首页
  • 软件开发
  • 计算机基础
  • Hello Halo
  • 新手必读
  • 关于本知识库
Copyright © 2024 your company All Rights Reserved. Powered by Halo.