zabbix监控Mysql各项指标步骤详解

zabbix监控Mysql各项指标步骤详解

一、安装MySQL

1、第一步关闭防火墙

 # systemctl stop  firewalld
 # systemctl disable  firewalld
 # setenforce 0
 # vim  /etc/selinux/config——>SELINUX=disabled

2、然后下载MySQL常用相关工具

 #yum -y install wget
 # yum -y install vim
 #yum -y install  lrzsz

3、上传Mysql相关配置文件(提前下载好的软件包)在这里插入图片描述4、下载相关软件

[root@localhost ~]# yum install -y net-tools.x86_64 libaio.x86_64 perl.x86_64

5、安装Mysql

[root@localhost ~]# yum remove -y mariadb-libs.x86_64   //卸载mariadb于mysql冲突
[root@localhost ~]# yum install -y mysql-community*    //安装上传的源码包

6、启动Mysql

[root@localhost ~]#systemctl start mysqld
[root@localhost ~]#systemctl enable mysqld
[root@localhost ~]#systemctl status mysqld

7、修改Mysql默认密码

[root@localhost ~]# grep ‘password’ /var/log/mysqld.log //查看默认密码,复制 (查不到的话,格式问题手敲
[root@localhost ~]# mysqladmin -uroot -p’上步复制的密码’ password ‘新密码’  //冒号和空格的后面,全都是密码全要复制

8、登录数据库

[root@localhost ~]# mysql -uroot -p’新密码’

9、设置授权用户和密码,使监控端zabbix-server能用这个身份登录数据库监听数据

[root@zabbix-agent-none1 ~]# vim /etc/my.cnf
在配置文件中末行插入:
[client]
default-character-set=utf8
host=localhost
user='zabbix'
password='Yang@123'

10、进入数据库授权用户和密码

[root@zabbix-agent-none1 ~]# mysql -uroot -p'Yang@123'   //登录数据库
[root@zabbix-agent-none1 ~]# mysql -uroot -p
Enter password:    //密码为Yuanwei@123
mysql>  grant all privileges on *.* to zabbix@localhost identified by 'Yang@123';       //给zabbix用户授权
mysql> flush privileges;  //刷新数据库权限
exit

11、定义MySQL监控变量

[root@zabbix-agentnone1~]#vim/etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf     //编辑MySQL配置文件
在末行添加所监控的内容:
类如:
#监控MySQL版本
UserParameter=mysql.version,mysql -V | cut -f6 -d" " | sed 's/,//'
#监控MySQL进程数
UserParameter=mysql.process,ps -ef|grep "mysql"|grep -v "grep"|wc -l
#监控MySQL运行状态
UserParameter=mysql.ping,/usr/bin/mysqladmin ping|grep alive|wc -l
#监控MySQL运行时间
UserParameter=mysql.uptime,/usr/bin/mysqladmin extended-status|grep Uptime|head -1|cut -f3 -d"|"
#监控MySQL的连接数
UserParameter=mysql.Threads.connected,/usr/bin/mysqladmin extended-status|grep Threads_connected|head -1|cut -f3 -d"|"
#监控MySQL活动状态的连接数
UserParameter=mysql.Threads.running,/usr/bin/mysqladmin extended-status|grep Threads_running|head -1|cut -f3 -d"|"
#监控MySQL客户端异常中断的数值
UserParameter=mysql.aborted.clients,/usr/bin/mysqladmin extended-status|grep Aborted_clients|head -1|cut -f3 -d"|"
#监控MySQL主从状态
UserParameter=mysql.Slave.status,/usr/bin/mysqladmin extended-status|grep Slave_runnin | grep -o ON |wc -l
#监控MySQL每秒钟获得的查询量
UserParameter=mysql.questions,/usr/bin/mysqladmin extended-status | grep Questions | head -1 | cut -f3 -d"|" 
#监控MySQL从数据文件里取数据的次数
UserParameter=mysql.read.rnd,/usr/bin/mysqladmin extended-status|grep Handler_read_rnd_next|head -1 | cut -f3 -d"|"  
#监控MySQL往数据文件里写数据的次数
UserParameter=mysql.write.rnd,/usr/bin/mysqladmin extended-status|grep Handler_write|head -1|cut -f3 -d"|" 
#监控MySQL内部COMMIT命令的个数
UserParameter=mysql.commit,/usr/bin/mysqladmin extended-status|grep Handler_commit| head -1 | cut -f3 -d"|" 
#监控MySQL请求从一张表中删除行的次数。
UserParameter=mysql.delete,/usr/bin/mysqladmin extended-status|grep Handler_delete| head -1 | cut -f3 -d"|" 
#监控MySQL表缓存没有命中的数量
UserParameter=mysql.Opened.tables,/usr/bin/mysqladmin extended-status|grep Opened_tables| head -1 | cut -f3 -d"|" 
#监控MySQL没有使用索引查询数量
UserParameter=mysql.slowqueries,/usr/bin/mysqladmin extended-status|grep Slow_queries|cut -f3 -d"|"
#监控MySQL执行全表搜索查询的数量
UserParameter=mysql.select.scan,/usr/bin/mysqladmin extended-status|grep Select_scan|cut -f3 -d"|"

12、重启MySQL被监控端agent

[root@zabbix-agent-none1 ~]# systemctl restart zabbix-agent

13、在监控端进行测试

[root@zabbix-agent-none1 ~]# zabbix_get -s 192.168.239.143 -p 10050 -k "mysql.Threads.connected"

在这里插入图片描述

14、来到监控端Web界面创建应用集–>监控项–>图形
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
下面是使用Zabbix监控MySQL步骤: 1. 安装Zabbix Agent 首先在MySQL服务器上安装Zabbix Agent,可以参考Zabbix官方文档进行安装。 2. 配置Zabbix Agent 在Zabbix Agent的配置文件中加入以下内容: ``` ### Option: UserParameter # User-defined parameter to monitor MySQL. UserParameter=mysql.status[*],mysql -u<username> -p<password> -e "show global status where Variable_name='$1';" -B | sed -n 2p | awk '{print $$2}' ### Option: Include # Include all files in directory which end in .conf Include=/etc/zabbix/zabbix_agentd.d/ ``` 这里通过UserParameter定义了一个自定义参数,用于检测MySQL的状态信息。其中`<username>`和`<password>`分别为MySQL的用户名和密码,需要替换为实际的值。 3. 创建Zabbix监控项 登录到Zabbix Web界面,创建一个监控项(Item),用于监控MySQL的状态信息。具体的步骤如下: - 进入“Configuration”菜单,选择“Hosts”选项卡,找到需要监控MySQL服务器; - 点击“Items”选项卡,然后点击“Create item”按钮; - 在“Key”字段中输入`mysql.status[<status_variable>]`,其中`<status_variable>`为需要监控MySQL状态变量名称,例如`Uptime`、`Threads_connected`等; - 在“Type”字段中选择“Zabbix agent”; - 在“Interval”字段中设置监控的时间间隔; - 其他选项可以使用默认值。 4. 创建Zabbix触发器 创建一个触发器(Trigger),用于在MySQL状态异常时触发告警。具体的步骤如下: - 在“Triggers”选项卡中,点击“Create trigger”按钮; - 在“Expression”字段中输入一个表达式,例如`{<hostname>:mysql.status[<status_variable>].last()}<0`,其中`<hostname>`为MySQL服务器的主机名,`<status_variable>`为需要监控MySQL状态变量名称; - 在“Severity”字段中设置告警级别; - 其他选项可以使用默认值。 通过以上步骤,就可以使用Zabbix监控MySQL的状态信息,并在MySQL状态异常时触发告警。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ever Since!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值