一、基础环境
zabbix监控端 192.168.40.132
server 被监控端 192.168.40.155(数据库,maridb或mysql57)
二、脚本
1、准备:
[root@slave1 ~]# mkdir /etc/zabbix/mysql.status(准备存放脚本的文件夹)
[root@slave1 ~]# vim /etc/zabbix/zabbix_agentd.d/mysql_status.conf
UserParameter=mysql.status[*],/etc/zabbix/mysql.status/mysql_status.sh $1(用户自定义key)
#rz 上传准备好的脚本在上面的目录下
[root@slave1 ~]# vim /etc/zabbix/mysql_status/mysql_status.sh #!/bin/bash #mysql for zabbix passwd=-p'Zjz@5740' Uptime() { mysqladmin $passwd status |awk '{print $2}' } Slow_queries() { mysqladmin $passwd status |awk '{print $9}' } Com_update() { mysqladmin $passwd extended-status |awk '/<Com_update>/ {print $4}' } Com_select() { mysqladmin $passwd extended-status |awk '/<Com_select>/ {print $4}' } Com_rollback() { mysqladmin $passwd extended-status |awk '/<Com_rollback>/ {print $4}' } Com_delete() { mysqladmin $passwd extended-status |awk '/<Com_delete>/ {print $4}' } Com_insert() { mysqladmin $passwd extended-status |awk '/<Com_insert>/ {print $4}' } Com_commit() { mysqladmin $passwd extended-status |awk '/<Com_commit>/ {print $4}' } Bytes_sent() { mysqladmin $passwd extended-status |awk '/<Bytes_sent>/ {print $4}' } Bytes_received() { mysqladmin $passwd extended-status |awk '/<Bytes_received>/ {print $4}' } Com_begin() { mysqladmin $passwd extended-status |awk '/<Com_begin>/ {print $4}' }
$1
2、调用
server端
[root@slave1 ~]# /etc/zabbix/mysql_status/mysql_status.sh Uptime mysqladmin: [Warning] Using a password on the command line interface can be insecure.(有待解决,让其不输出) 929 [root@slave1 ~]# /etc/zabbix/mysql_status/mysql_status.sh Com_select 0
三、常用监控项
1、QPS(每秒查询率) 2、mysql请求流量带宽 3、mysql响应流量带宽
4、监控主从(show slave statusG); 5、TPS(每秒事务的处理数量);
6、监控缓冲池使用情况; 7、缓存碎片; 8、慢查询数量;
9、当前连接数;10、吞吐量;11、端口和服务状态;12、mysql正常运行的时间;
https://blog.csdn.net/qq_23114715/article/details/102290747
ttps://blog.csdn.net/Hwh1231/article/details/82740747
https://www.dklwj.com/?cate=14
https://blog.csdn.net/m0_37814112/article/details/80605977(看)
https://www.cnblogs.com/bixiaoyu/p/7337116.html(zabbix监控MySQL主从)