zabbix 监控mysql的方法_zabbix

来源:脚本之家  责任编辑:小易  

  一、从网上下载相应脚2113本与XML定义文5261件。 4102 extensive_mysql_monitoring_including_replication1.   Template_MySQL_Server.xml2.   Template_MySQL_Replication_Master.xml3.   Template_MySQL_Replication_Slave.xml  和执行脚本:mysql.php  二、把mysql.php上传至配1653置文件目录/etc/zabbix/1.   chmod 755 mysql.php  三、修改mysql.php文件  根据本机环境。  第一行加入:#!/usr/bin/php  在最后一行加入:?>  关闭调试:define('DEBUG',true); 为 define('DEBUG',False);  修改日志、数据文件路径:1.   define('LOG',"/tmp/zabbix_".SYSTEM.".log");2.   define('DAT',"/tmp/zabbix_".SYSTEM.".dat");3.   define('UTIME',"/tmp/.zabbix_".SYSTEM.".utime");4.   define('DTIME',"/tmp/.zabbix_".SYSTEM.".dtime");  修改:define('SYSTEM','mysql'.(DEBUG ? "-debug" : ""));为:define('SYSTEM','mysql');  打开系统日志功能  > ".LOG); 为  > ".LOG);  在$cmd = "zabbix_sender -z $server -p 10051 -s $host -k ".SYSTEM.".$var -o $val";  下面增加一行:exec($cmd);  四、在zabbix_agentd.conf配置文件中加入  UserParameter=mysql.daily,php /etc/zabbix/mysql.php daily 用户名密码  UserParameter=mysql.live,php /etc/zabbix/mysql.php live 用户名 密码  daily:每天执行一次。  live:按指定时间执行一次。  php :执行php文件  /etc/zabbix/mysql.php:mysql.php文件所在的文件路径  用户名 密码:登录mysql数据库的账户与密码  重启zabbix_agentd  五、在zabbix web管理界面导入xml文件  配置-导入/导出-浏览  六、在主机内增加指定模板  配置-主机-具体主机名-Link with Template-新增-刚导入的模板。  模板分为三种:  template MYSQL_server:监控项最全  template MYSQL_Replication_Master:只监控主要参数,监控功能相对最少  template MYSQL_Replication_Slave:主要针对性能方面的监控。  七、测试监控是否成功  删除 定时文件1.   rm /tmp/.zabbix_mysql-debug.dtime;  取的每天的监控数据1.   php /etc/zabbix/mysql.php daily root *****  取即时数据1.   php /etc/zabbix/mysql.php live root *****  查看日志1.   cat /tmp/zabbix_mysql.log2.   Info from server: "Processed 1 Failed 0 Total 1 Seconds spent 0.006261"3.   sent: 1; skipped: 0; total: 14.   Info from server: "Processed 1 Failed 0 Total 1 Seconds spent 0.004047"5.   sent: 1; skipped: 0; total: 16.   Info from server: "Processed 0 Failed 106 Total 106 Seconds spent 0.045790"7.   sent: 106; skipped: 0; total: 106  看到上述为成功  查看DAT的文件。上传的数据1.   cat /tmp/zabbix_mysql.dat,www.zgxue.com防采集请勿采集本网。

zabbix部署文档

怎样使用zabbix监控服务器的 mysql数据库 进入 zabbix web 台Configuration-->Hosts groups-->点击Create host group-->选择template 选项卡 选择模板TemplateApp MySQLTempldate OS Linux点击update 即(032.png) 进入zabbix web 台configurat

zabbix部署完之后

有两种方法,一种方法使用mysql的check table和repair table 的sql语句,另一种方法是使用MySQL提供的多个myisamchk, isamchk数据检测恢复工具。前者使用起来比较简便。推荐使用。 1. check table 和 repair table 登陆mysql 终端: mysql -uxxx

zabbix-agent操作

一.zabbix监控机导入模板 导入模板Mysql_Multiport_Monitor.xml,导入后,模版默认名为Percona MySQL Server Multiport Template。 二.被监控端 cat /usr/local/zabbix/etc/zabbix_agentd.conf | grep '^Include' Include=/usr/local/zabbix/etc/z

 1.监控mysql,首先要先安装mysql

一、从网上下载相应脚本与XML定义文件。 extensive_mysql_monitoring_including_replication 1. Template_MySQL_Server.xml 2. Template_MySQL_Replication_Master.xml 3. Template_MySQL_Replication_Slave.xml 和执行脚本:mysql.php 二、

[root@localhost ~]# yum -y install mariadb mariadb-server

做过Zabbix的同学都知道,Zabbix通过专用的Agent或者SNMP收集相关的监控数据,然后存储到数据库里面实时在前台展示。Zabbix监控数据主要分为以下两类: 历史数据:history相关表,从history_uint表里面可以查询到设备监控项目的最大,最小和平均

2.编写mysql监控项的脚本

在zabbix-agent先授权个用户 不然测试时没有权限

[root@localhost ~]# mysqlWelcome to the MariaDB monitor. Commands end with ; or \g.Your MariaDB connection id is 33Server version: 5.5.65-MariaDB MariaDB ServerCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> grant all on *.* to 'check'@'localhost' identified by '123';Query OK, 0 rows affected (0.00 sec)

mysql监控的内容主要有 主从的状态 (得先配置主从 在下面) 流量检测 发送,接受常规操作 增删改查 某个库、某个表的大小 tps(每秒查询处理的事务数)qps(每秒能处理多少次请求数)

[root@localhost ~]# mkdir /etc/zabbix/scipts[root@localhost ~]# cd /etc/zabbix/scipts/[root@localhost scipts]# vim mysql.sh #!/bin/bashmysql="mysql -ucheck -p123"case $1 in # mysql主从状态 slave_status) $mysql -e "show slave status\G" |grep "Yes" |wc -l ;; # mysql流量 接受 Bytes_received) mysqladmin extended-status |grep "Bytes_received" |awk '{print $4}' ;; # mysql流量 发送 Bytes_sent) mysqladmin extended-status |grep "Bytes_sent" |awk '{print $4}' ;; # mysql常规操作 增 Com_insert) mysqladmin extended-status |grep -w "Com_insert" |awk '{print $4}' ;; # mysql常规操作 删 Com_delete) mysqladmin extended-status |grep -w "Com_delete" |awk '{print $4}' ;; # mysql常规操作 改 Com_update) mysqladmin extended-status |grep -w "Com_update" |awk '{print $4}';; # mysql常规操作 查 Com_select) mysqladmin extended-status |grep -w "Com_select" |awk '{print $4}' ;; # mysql tps tps) mysqladmin status |awk '{print $6/$2}' ;; # mysql qps=(rollback+commit)/uptime qps) rollback=$(mysqladmin extended-status |grep -w "Com_rollback" |awk '{print $4}') commit=$(mysqladmin extended-status |grep -w "Com_commit" |awk '{print $4}') uptime=$(mysqladmin status |awk '{print $2}') count=$[$rollback+$commit] echo "$count $uptime" > /tmp/a.txt cat /tmp/a.txt |awk '{print $1/$2}' ;; # 库大小 我们这里拿mysql库举例 db) $mysql -e "select sum(data_length) from information_schema.tables where table_schema='mysql'" |sed -n '2p' ;; # 表大小 我们这里拿mysql下面的user表举例 tb) $mysql -e "select sum(data_length) from information_schema.tables where table_schema='mysql' and table_name='user'" |sed -n '2p' ;;esac

3.自定义键值key 重启zabbix-agent

[root@localhost scipts]# cd /etc/zabbix/zabbix_agentd.d/[root@localhost zabbix_agentd.d]# vim mysql.confUserParameter=mysql[*],/etc/zabbix/scipts/mysql.sh $1[root@localhost zabbix_agentd.d]# systemctl restart zabbix-agent

4.在zabbix-server测试 先安装zabbix-get

[root@localhost ~]# yum -y install zabbix-get[root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[slave_status]2[root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[Bytes_received]850970[root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[Bytes_sent]224906[root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[Com_insert]3001[root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[Com_delete]135[root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[Com_update]128[root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[Com_select]19[root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[qps]0.864842[root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[tps]1.92936[root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[db]555118[root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[tb]420

报错处理

[root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[slave_status]sh: /etc/zabbix/scipts/mysql.sh: 权限不够脚本执行权限不够 去zabbix-agent 加权限[root@localhost zabbix_agentd.d]# chmod +x /etc/zabbix/scipts/mysql.sh [root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[slave_status]ERROR 1227 (42000) at line 1: Access denied; you need (at least one of) the SUPER,REPLICATION CLIENT privilege(s) for this operation是因为用户没有权限查看 去zabbix-agent 授权个用户在脚本里面加上[root@localhost ~]# mysqlWelcome to the MariaDB monitor. Commands end with ; or \g.Your MariaDB connection id is 33Server version: 5.5.65-MariaDB MariaDB ServerCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> grant all on *.* to 'check'@'localhost' identified by '123';Query OK, 0 rows affected (0.00 sec)[root@localhost scipts]# vim mysql.sh #!/bin/bashmysql="mysql -ucheck -p123"case $1 in # mysql主从状态 slave_status) $mysql -e "show slave status\G" |grep "Yes" |wc -l ;;

zabbix页面上添加监控项和图形

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

查看mysql流量数据

在这里插入图片描述

在这里插入图片描述

查看mysql qps tps

在这里插入图片描述

查看mysql主从状态

在这里插入图片描述

查看mysql常规操作

在这里插入图片描述

查看mysql库表大小

在这里插入图片描述

mysql主从配置

一.zabbix-server端

[root@localhost ~]# vim /etc/my.cnf

在这里插入图片描述

[root@localhost ~]# systemctl restart mariadb[root@localhost ~]# mysqlWelcome to the MariaDB monitor. Commands end with ; or \g.Your MariaDB connection id is 7Server version: 5.5.65-MariaDB MariaDB ServerCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> show master status;+------------------+----------+--------------+------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |+------------------+----------+--------------+------------------+| mysql-bin.000001 | 175170 | | |+------------------+----------+--------------+------------------+1 row in set (0.00 sec)MariaDB [(none)]> grant all on *.* to 'tom'@'%' identified by '123';Query OK, 0 rows affected (0.00 sec)MariaDB [(none)]> flush privileges;Query OK, 0 rows affected (0.00 sec)

二.zabbix-agent端

[root@localhost ~]# vim /etc/my.cnf

在这里插入图片描述

[root@localhost ~]# systemctl restart mariadb[root@localhost ~]# mysqlWelcome to the MariaDB monitor. Commands end with ; or \g.Your MariaDB connection id is 2Server version: 5.5.65-MariaDB MariaDB ServerCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> change master to -> master_host='192.168.27.136', -> master_user='tom', -> master_password='123', -> master_log_file='mysql-bin.000001', -> master_log_pos=175170;Query OK, 0 rows affected (0.01 sec)MariaDB [(none)]> start slave;Query OK, 0 rows affected (0.00 sec)MariaDB [(none)]> show slave status \G;*************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: 192.168.27.136 Master_User: tom Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql-bin.000001 Read_Master_Log_Pos: 175170 Relay_Log_File: mysql-relay.000004 Relay_Log_Pos: 529 Relay_Master_Log_File: mysql-bin.000001 Slave_IO_Running: Yes Slave_SQL_Running: No Replicate_Do_DB: Replicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Last_Errno: 1146 Last_Error: Error 'Table 'zabbix.history_uint' doesn't exist' on query. Default database: 'zabbix'. Query: 'insert into history_uint (itemid,clock,ns,value) values (23287,1602301747,810415730,1)' Skip_Counter: 0 Exec_Master_Log_Pos: 173424 Relay_Log_Space: 2565 Until_Condition: None Until_Log_File: Until_Log_Pos: 0 Master_SSL_Allowed: No Master_SSL_CA_File: Master_SSL_CA_Path: Master_SSL_Cert: Master_SSL_Cipher: Master_SSL_Key: Seconds_Behind_Master: NULLMaster_SSL_Verify_Server_Cert: No Last_IO_Errno: 0 Last_IO_Error: Last_SQL_Errno: 1146 Last_SQL_Error: Error 'Table 'zabbix.history_uint' doesn't exist' on query. Default database: 'zabbix'. Query: 'insert into history_uint (itemid,clock,ns,value) values (23287,1602301747,810415730,1)' Replicate_Ignore_Server_Ids: Master_Server_Id: 11 row in set (0.00 sec)ERROR: No query specified

报错处理

[root@localhost ~]# vim /etc/my.cnf

在这里插入图片描述

[root@localhost ~]# systemctl restart mariadb[root@localhost ~]# mysqlWelcome to the MariaDB monitor. Commands end with ; or \g.Your MariaDB connection id is 4Server version: 5.5.65-MariaDB MariaDB ServerCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> show slave status \G;*************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: 192.168.27.136 Master_User: tom Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql-bin.000001 Read_Master_Log_Pos: 199126 Relay_Log_File: mysql-relay.000006 Relay_Log_Pos: 3950 Relay_Master_Log_File: mysql-bin.000001 Slave_IO_Running: Yes Slave_SQL_Running: Yes Replicate_Do_DB: Replicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Last_Errno: 0 Last_Error: Skip_Counter: 0 Exec_Master_Log_Pos: 199126 Relay_Log_Space: 4240 Until_Condition: None Until_Log_File: Until_Log_Pos: 0 Master_SSL_Allowed: No Master_SSL_CA_File: Master_SSL_CA_Path: Master_SSL_Cert: Master_SSL_Cipher: Master_SSL_Key: Seconds_Behind_Master: 0Master_SSL_Verify_Server_Cert: No Last_IO_Errno: 0 Last_IO_Error: Last_SQL_Errno: 0 Last_SQL_Error: Replicate_Ignore_Server_Ids: Master_Server_Id: 11 row in set (0.00 sec)

到此这篇关于zabbix 监控mysql的方法的文章就介绍到这了,更多相关zabbix 监控mysql内容请搜索真格学网以前的文章或继续浏览下面的相关文章希望大家以后多多支持真格学网! 您可能感兴趣的文章:Zabbix实现监控多个mysql过程解析zabbix监控Nginx/Tomcat/MySQL的详细教程zabbix监控MySQL主从状态的方法详解Zabbix 2.4.5自带MySQL监控的配置使用教程安装配置Zabbix来监控MySQL的基本教程

 一、从网上下载相应脚2113本与5261XML定义文件。 4102 extensive_mysql_monitoring_including_replication1.   Template_MySQL_Server.xml2.   Template_MySQL_Replication_Master.xml3.   Template_MySQL_Replication_Slave.xml  和执行脚本:mysql.php  二1653、把mysql.php上传至配置文件目录/etc/zabbix/1.   chmod 755 mysql.php  三、修改mysql.php文件  根据本机环境。  第一行加入:#!/usr/bin/php  在最后一行加入:?>  关闭调试:define('DEBUG',true); 为 define('DEBUG',False);  修改日志、数据文件路径:1.   define('LOG',"/tmp/zabbix_".SYSTEM.".log");2.   define('DAT',"/tmp/zabbix_".SYSTEM.".dat");3.   define('UTIME',"/tmp/.zabbix_".SYSTEM.".utime");4.   define('DTIME',"/tmp/.zabbix_".SYSTEM.".dtime");  修改:define('SYSTEM','mysql'.(DEBUG ? "-debug" : ""));为:define('SYSTEM','mysql');  打开系统日志功能  > ".LOG); 为  > ".LOG);  在$cmd = "zabbix_sender -z $server -p 10051 -s $host -k ".SYSTEM.".$var -o $val";  下面增加一行:exec($cmd);  四、在zabbix_agentd.conf配置文件中加入  UserParameter=mysql.daily,php /etc/zabbix/mysql.php daily 用户名密码  UserParameter=mysql.live,php /etc/zabbix/mysql.php live 用户名 密码  daily:每天执行一次。  live:按指定时间执行一次。  php :执行php文件  /etc/zabbix/mysql.php:mysql.php文件所在的文件路径  用户名 密码:登录mysql数据库的账户与密码  重启zabbix_agentd  五、在zabbix web管理界面导入xml文件  配置-导入/导出-浏览  六、在主机内增加指定模板  配置-主机-具体主机名-Link with Template-新增-刚导入的模板。  模板分为三种:  template MYSQL_server:监控项最全  template MYSQL_Replication_Master:只监控主要参数,监控功能相对最少  template MYSQL_Replication_Slave:主要针对性能方面的监控。  七、测试监控是否成功  删除 定时文件1.   rm /tmp/.zabbix_mysql-debug.dtime;  取的每天的监控数据1.   php /etc/zabbix/mysql.php daily root *****  取即时数据1.   php /etc/zabbix/mysql.php live root *****  查看日志1.   cat /tmp/zabbix_mysql.log2.   Info from server: "Processed 1 Failed 0 Total 1 Seconds spent 0.006261"3.   sent: 1; skipped: 0; total: 14.   Info from server: "Processed 1 Failed 0 Total 1 Seconds spent 0.004047"5.   sent: 1; skipped: 0; total: 16.   Info from server: "Processed 0 Failed 106 Total 106 Seconds spent 0.045790"7.   sent: 106; skipped: 0; total: 106  看到上述为成功  查看DAT的文件。上传的数据1.   cat /tmp/zabbix_mysql.dat内容来自www.zgxue.com请勿采集。


  • 本文相关:
  • 史上最便捷搭建zookeeper服务器的方法(推荐)
  • zabbix实现监控多个mysql过程解析
  • linux平台zabbix agent的安装配置方法
  • zabbix redis自动发现端口的脚本返回json格式
  • zabbix配置监控项及聚合图形的实例代码
  • 什么是zabbix(高度集成的监控集成方案)
  • zabbix监控多个jvm进程的方法
  • centos 7 下的 zabbix3.4 安装步骤详解
  • zabbix v3.0安装部署全过程详解
  • zabbix利用python脚本发送报警邮件的方法
  • 如何实现zabbix监控mysql
  • zabbix监控mysql哪些性能
  • zabbix监控mysql哪些参数
  • zabbix 监控mysql出错
  • 怎样使用zabbix监控服务器的mysql数据库
  • 为什么zabbix监控不了mysql
  • zabbix怎么监控多端口mysql
  • zabbix监控mysql需要什么权限
  • 如何从Zabbix数据库中获取监控数据
  • 请教zabbix如何监控mssql
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全星外虚拟主机华众虚拟主机linuxwin服务器ftp服务器dns服务器tomcat nginxzabbix云和虚拟化服务器其它首页服务器zabbixzabbix实现监控多个mysql过程解析zabbix监控nginx/tomcat/mysql的详细教程zabbix监控mysql主从状态的方法详解zabbix 2.4.5自带mysql监控的配置使用教程安装配置zabbix来监控mysql的基本教程史上最便捷搭建zookeeper服务器的方法(推荐)zabbix实现监控多个mysql过程解析linux平台zabbix agent的安装配置方法zabbix redis自动发现端口的脚本返回json格式zabbix配置监控项及聚合图形的实例代码什么是zabbix(高度集成的监控集成方案)zabbix监控多个jvm进程的方法centos 7 下的 zabbix3.4 安装步骤详解zabbix v3.0安装部署全过程详解zabbix利用python脚本发送报警邮件的方法zabbix邮件报警设置方法zabbix监控交换机设置方法zabbix监控linux主机设置方法zabbix安装图文教程(需要lamp或者解决zabbix server is running |zabbix利用python脚本发送报警邮zabbix系统端口监控状态详解如何调用zabbix api获取主机zabbix v3.0安装部署全过程详解zabbix监控方案-官方最新4.4版本zabbix指定时间内变化值设置方法详解解决zabbix server is running | no.的方zabbix如何通过ssh监控获取网络设备数据zabbix 2.4.5自带mysql监控的配置使用教程详解如何调用zabbix api获取主机zabbix系统端口监控状态zabbix web监测实现过程图解zabbix 添加你需要监控的主机步骤详解zabbix监控多个jvm进程的方法zabbix远程执行命令的示例详解
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved