Zabbix自定义脚本监控MySQL数据库

一、MySQL数据库配置

1.1 创建Mysql数据库用户

[root@mysql ~]# mysql -uroot -p
create user zabbix@'127.0.0.1' identified by '123456';
flush privileges;

1.2 添加用户密码到mysql client的配置文件中

[root@mysql ~]# vim /etc/my.cnf.d/client.cnf 
[client]
host='127.0.0.1'
user='zabbix'
password='123456'

二、创建自定义监控脚本 

[root@mysql ~]# vim /etc/zabbix/script/check_mysql.sh  

#!/bin/bash
#Mysql主机地址
MYSQL_HOST='127.0.0.1'
#Mysql端口
MYSQL_PORT='3306'
#数据连接
MYSQL_CONN="/usr/bin/mysqladmin  -h${MYSQL_HOST} -P${MYSQL_PORT}"#参数是否正确
if [ $# -ne "1" ];thenecho "arg error!" 
fi#获取数据
case $1 inUptime)result=`${MYSQL_CONN} status|cut -f2 -d":"|cut -f1 -d"T"`echo $result ;;Com_update)result=`${MYSQL_CONN} extended-status |grep -w "Com_update"|cut -d"|" -f3`echo $result ;;Slow_queries)result=`${MYSQL_CONN} status |cut -f5 -d":"|cut -f1 -d"O"`echo $result ;;Com_select)result=`${MYSQL_CONN} extended-status |grep -w "Com_select"|cut -d"|" -f3`echo $result ;;Com_rollback)result=`${MYSQL_CONN} extended-status |grep -w "Com_rollback"|cut -d"|" -f3`echo $result ;;Questions)result=`${MYSQL_CONN} status|cut -f4 -d":"|cut -f1 -d"S"`echo $result ;;Com_insert)result=`${MYSQL_CONN} extended-status |grep -w "Com_insert"|cut -d"|" -f3`echo $result ;;Com_delete)result=`${MYSQL_CONN} extended-status |grep -w "Com_delete"|cut -d"|" -f3`echo $result ;;Com_commit)result=`${MYSQL_CONN} extended-status |grep -w "Com_commit"|cut -d"|" -f3`echo $result ;;Bytes_sent)result=`${MYSQL_CONN} extended-status |grep -w "Bytes_sent" |cut -d"|" -f3`echo $result ;;Bytes_received)result=`${MYSQL_CONN} extended-status |grep -w "Bytes_received" |cut -d"|" -f3`echo $result ;;Com_begin)result=`${MYSQL_CONN} extended-status |grep -w "Com_begin"|cut -d"|" -f3`echo $result ;;*)echo "Unknown options." ;;
esac

三、zabbix agent添加自定义键值

[root@mysql ~]# vim /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf
UserParameter=mysql.status[*],bash /etc/zabbix/script/check_mysql.sh $1
UserParameter=mysql.ping,/usr/bin/mysqladmin ping 2>/dev/null | grep -c alive
UserParameter=mysql.version,/usr/bin/mysql -V
[root@mysql ~]# systemctl restart zabbix-agent

四、链接Mysql模板

配置–>主机–>添加模板–>选择“Template DB MySQL”

五、数据查看

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/98271.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JMeter压测如何分配业务比例?

在进行综合场景压测时,由于不同的请求,要求所占比例不同,那如何实现呢? 有人说将这些请求分别放到单独的线程组下,然后将线程组的线程数按照比例进行配置,这种方法不是很好,想想,不…

百元开放式耳机哪款好一点耐用、百元耳放推荐

在耳机品类中,佩戴无需入耳、可保持耳道舒适的开放式耳机正成为新的潮流,不仅不少消费者趋之若鹜,相对于传统入耳式耳机,开放式耳机具备开放双耳的特性,能敞开耳道,让耳朵随时呼吸,保持干燥透气…

pytorch算力与有效性分析

pytorch Windows中安装深度学习环境参考文档机器环境说明3080机器 Windows11qt_env 满足遥感CS软件分割、目标检测、变化检测的需要gtrs 主要是为了满足遥感监测管理平台(BS)系统使用的,无深度学习环境内容swin_env 与 qt_env 基本一致od 用于…

如何使用Windows电脑上的多开器提高互联网运营效率?

使用Windows电脑上的多开器可以帮助您同时打开多个应用程序或网站,以提高您的互联网运营效率。以下是一些使用多开器的建议: 打开多个浏览器窗口。使用多开器可以让您在同一时间打开多个浏览器窗口,以便在多个网站之间快速切换并执行多项任务…

MySQL查询(基础到高级)

一、单表查询: 1.基本查询: 1.1 查询多个字段: 1.查询所有字段: select * from 表名;2.查询指定字段: select 字段1,字段2 from 表名; 1.2 去除重复记录 select distinct "字段" FROM "表名"; …

LuatOS-SOC接口文档(air780E)-- fskv - kv数据库,掉电不丢数据

示例 -- 本库的目标是替代fdb库 -- 1. 兼容fdb的函数 -- 2. 使用fdb的flash空间,启用时也会替代fdb库 -- 3. 功能上与EEPROM是类似的 fskv.init() fskv.set("wendal", 1234) log.info("fskv", "wendal", fskv.get("wendal"))--[[ fs…

Cuckoo沙箱各Ubuntu版本安装及使用

1.沙箱简介 1.1 沙箱 沙箱是一个虚拟系统程序,允许你在沙箱环境中运行浏览器或其他程序,因此运行所产生的变化可以随后删除。它创造了一个类似沙盒的独立作业环境,在其内部运行的程序并不能对硬盘产生永久性的影响。 在网络安全中&#xff…

前端JavaScript入门到精通,javascript核心进阶ES6语法、API、js高级等基础知识和实战 —— Web APIs(七)放大镜实战

个人实战文档 本次实战是对自己整个api阶段的总结。 参考效果如下地址: http://erabbit.itheima.net/#/product/3995139 本次实战主要分为以下几个模块。 顶部导航模块 需求: 顶部导航开始不显示等页面滑到主导航栏,这个新顶部导航栏滑…

004 Python UDP网络通信

Udp通信方式是面向非连接的。而Tcp是面向连接的类似于打电话的通信方式,而Udp则是类似于校园或者企业机关里的广播,播放广播的不关心是否都听到了,而校园里的学生未必每个人都在听广播。这个例子就很像Udp网络通信,也是udp的缺点&…

【C++设计模式之策略模式】分析及示例

描述 策略模式(Strategy Pattern)是一种行为型设计模式,它允许在运行时根据不同的情况选择算法的行为。该模式将算法的定义封装成一组易于切换和替换的类,使得算法可以独立于其使用者进行变化。 原理 策略模式通过将具体的算法…

用url类来访问服务器上的文件

场景一: package com.guonian.miaosha;import java.io.BufferedReader; import java.io.File; import java.io.IOException; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL;…

WIN10 NPM的安装

引言: 什么是node.js? javaScript是一门脚本语言,通常被用来编写、执行本地源代码。脚本语言需要一个解析器才能运行,HTML文件中的JavaScript代码由浏览器解析执行。而自行执行JavaScript代码则需要Node.js解析器才能运行。 每个解析器都…

【Jmeter】性能测试脚本开发——性能测试环境准备、Jmeter脚本编写和执行

文章目录 一、常用的Jmeter元件二、性能测试环境准备三、编写Jmeter脚本四、执行测试脚本 一、常用的Jmeter元件 取样器-HTTP请求 作用:发送HTTP请求配置原件-HTTP请求默认值 作用:设置HTTP请求的默认参数配置原件-用户定义的变量 作用:定义…

84.柱状图中最大的矩形

class Solution { public:int largestRectangleArea(vector<int>& heights) {//法一&#xff1a;枚举宽&#xff0c;超时if(0){int nheights.size();int area0;for(int left0;left<n;left){int minHINT_MAX;for(int rightleft;right<n;right){minHmin(minH,hei…

ARM day5

三盏灯流水 .text .global _start _start: 1.LDR R0,0X50000A28LDR R1,[R0]ORR R1,R1,#(0X1<<4)STR R1,[R0] 1.LDR R0,0X50000A28LDR R1,[R0]ORR R1,R1,#(0X1<<5)STR R1,[R0] 2.LDR R0,0X50006000LDR R1,[R0]BIC R1,R1,#(0X3<<20)ORR R1,R1,#(0X1<<…

文件扫描模块

文章目录 前言文件扫描模块设计初级扫描方案一实现单线程扫描整合扫描步骤 设计初级扫描方案二周期性扫描 总结 前言 我们这个模块考虑的是数据库里面的内容从哪里获取。 获取完成后&#xff0c;这时候,我们就需要把目录里面文件/子文件都获取出来,并存入数据库。 文件扫描模…

强化学习------DQN算法

简介 DQN&#xff0c;即深度Q网络&#xff08;Deep Q-network&#xff09;&#xff0c;是指基于深度学习的Q-Learing算法。Q-Learing算法维护一个Q-table&#xff0c;使用表格存储每个状态s下采取动作a获得的奖励&#xff0c;即状态-价值函数Q(s,a)&#xff0c;这种算法存在很…

怎么用蜂邮EDM和Outlook批量发送邮件带附件

蜂邮EDM和Outlook批量发送邮件带附件的流程&#xff1f;有哪些邮件批量发送邮件附件的方法&#xff1f; 在现代社会中&#xff0c;电子邮件是一种广泛应用的沟通工具&#xff0c;而批量发送邮件带附件则是许多商业和个人用户的常见需求。本文将介绍如何使用蜂邮EDM和Outlook这…

同步方法以及代码块

一、三大不安全案例 package day02; ​ /*** Author: Grace* Date: 2023/10/7 12:50* Description:*/ ​ //不安全的取钱 //两个人去银行取钱&#xff0c;账户 public class UnsafeBank {public static void main(String[] args) {//账户Account account new Account(100, &q…

高通camx开源部分简介

camera整体框架 ISP Pipeline diagram Simple Model Camx and chi_cdk 整体框架 CtsVerifier, Camra Formats Topology of Camera Formats. Topology (USECASE: UsecaseVideo) Nodes List Links between nodes Pipeline PreviewVideo Buffer manager Create Destro…