zabbix3.0.2 使用percona的mysql插件的遇到的诡异问题解决记录
2016-05-18 21:31
381 查看
-->前言
在使用percona zabbix mysql模版插件的过程中,碰到的一些问题记录在此,后续如果再碰到的话,也一起记录下来,好记星不如烂笔头,这是真理啊~1,报错记录ERROR: Can't connect to local MySQL
调试报错:[root@db_master_2 zabbix_agentd.d]# /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg ERROR: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)[root@db_master_2 zabbix_agentd.d]# [root@db_master_2 zabbix_agentd.d]# |
做软连接,ln -s /usr/local/mysql/mysql.sock /var/lib/mysql/mysql.sock,做完软连接后需要重启zabbix_agentd才能生效。
[root@db_m2_slave1 ~]# mkdir -p /var/lib/mysql/ [root@db_m2_slave1 ~]# ln -s /usr/local/mysql/mysql.sock /var/lib/mysql/mysql.sock [root@db_m2_slave1 ~]# [root@db_m2_slave1 ~]# killall zabbix_agentd [root@db_m2_slave1 ~]# /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf [root@db_m2_slave1 ~]# |
2,报错记录server端获取不了数据
现象是agent能获得数据,但是server端获得不了数据:(1)agentd端mysql服务器能获得数据:
[root@db_m2_slave1 ~]# /usr/bin/php -q/var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --itemsgg
gg:6
[root@db_m2_slave1 ~]#
(2)zabbix-server端获取不数据
[root@zabbix_serv_121_12 scripts]#/usr/local/zabbix/bin/zabbix_get -s 192.161.3.72 -p10050 -k "MySQL.Threads-connected"
ERROR: run the command manually toinvestigate the problem: /usr/bin/php -q/var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --itemsgg
[root@zabbix_serv_121_12 scripts]#
那么问题在哪里呢?这要从zabbix-sever和zabbix-agentd的原理流程分析起了,sever是通过zabbix的根目录去调用/etc/zabbix/zabbix_agentd.d/userparameter_percona_mysql.conf里面获取参数MySQL.Threads-connected的,所以我们去找这个userparameter_percona_mysql.conf的此参数值的获取方法。
root@db_m2_slave1 ~]# more /etc/zabbix/zabbix_agentd.d/userparameter_percona_mysql.conf |grep MySQL.Threads-connected UserParameter=MySQL.Threads-connected,/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh iu [root@db_m2_slave1 ~]# |
[root@db_m2_slave1 ~]# sh /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh kt ERROR: run the command manually to investigate the problem: /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg |
”后报错,如下所示:
[root@db_m2_slave1 ~]# bash -x /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh kt + echo '' + ITEM=kt + HOST=localhost ++ dirname /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh + DIR=/var/lib/zabbix/percona/scripts + CMD='/usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg' + CACHEFILE=/tmp/localhost-mysql_zabbix_stats.txt + '[' kt = running-slave ']' + '[' -e /tmp/localhost-mysql_zabbix_stats.txt ']' + /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg + '[' -e /tmp/localhost-mysql_zabbix_stats.txt ']' + echo 'ERROR: run the command manually to investigate the problem: /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg' ERROR: run the command manually to investigate the problem: /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg |
[root@db_m2_slave1 ~]# vim/tmp/localhost-mysql_zabbix_stats.txt
[root@db_m2_slave1 ~]# chown -Rzabbix:zabbix /tmp/localhost-mysql_zabbix_stats.txt
[root@db_m2_slave1 ~]#
然后再bash调用执行命令:
[root@db_m2_slave1 ~]# bash -x /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh kt + echo '' + ITEM=kt + HOST=localhost ++ dirname /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh + DIR=/var/lib/zabbix/percona/scripts + CMD='/usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg' + CACHEFILE=/tmp/localhost-mysql_zabbix_stats.txt + '[' kt = running-slave ']' + '[' -e /tmp/localhost-mysql_zabbix_stats.txt ']' ++ stat -c %Y /tmp/localhost-mysql_zabbix_stats.txt + TIMEFLM=1463491777 ++ date +%s + TIMENOW=1463491788 ++ expr 1463491788 - 1463491777 + '[' 11 -gt 300 ']' + '[' -e /tmp/localhost-mysql_zabbix_stats.txt ']' + cat /tmp/localhost-mysql_zabbix_stats.txt + sed 's/ /\n/g; s/-1/0/g' + grep kt + awk -F: '{print $2}' [root@db_m2_slave1 ~]# |
[root@zabbix_serv_121_12 scripts]# /usr/local/zabbix/bin/zabbix_get -s 192.161.3.72 -p10050 -k "MySQL.Threads-connected" 9 [root@zabbix_serv_121_12 scripts]# |
3,监控图无缘无故断了一段时间
监控图上面的图突然断了,没有显示,如zabbix-serber上check下,报错:[root@zabbix_serv_121_12 scripts]# /usr/local/zabbix/bin/zabbix_get -s 192.161.3.72 -p10050 -k "MySQL.Threads-connected" rm: cannot remove `/tmp/localhost-mysql_cacti_stats.txt': Operation not permitted 8 [root@zabbix_serv_121_12 scripts]# |
[root@db_m2_slave1 zabbix_agentd.d]# chown -R zabbix:zabbix localhost-mysql_cacti_stats.txt chown: cannot access `localhost-mysql_cacti_stats.txt': No such file or directory [root@db_m2_slave1 zabbix_agentd.d]# |
echo "" >> /tmp/$HOST-mysql_cacti_stats.txt ITEM=$1 HOST=localhost DIR=`dirname $0` CMD="/usr/bin/php -q $DIR/ss_get_mysql_stats.php --host $HOST --items gg" #CACHEFILE="/tmp/zabbix/$HOST-mysql_cacti_stats.txt:3317" CACHEFILE="/tmp/$HOST-mysql_cacti_stats.txt" if [ "$ITEM" = "running-slave" ]; then # Check for running slave #RES=`HOME=~zabbix mysql -e 'SHOW SLAVE STATUS\G' | egrep '(Slave_IO_Running|Slave_SQL_Running):' | awk -F: '{print $2}' | tr '\n' ','` RES=`/usr/local/mysql/bin/mysql -e 'SHOW SLAVE STATUS\G' | egrep '(Slave_IO_Running|Slave_SQL_Running):' | awk -F: '{print $2}' | tr '\n' ','` if [ "$RES" = " Yes, Yes," ]; then echo 1 else echo 0 fi exit elif [ -e $CACHEFILE ]; then # Check and run the script #TIMEFLM=`stat -c %Y /tmp/zabbix/$HOST-mysql_cacti_stats.txt:3317` TIMEFLM=`stat -c %Y /tmp/$HOST-mysql_cacti_stats.txt` TIMENOW=`date +%s` if [ `expr $TIMENOW - $TIMEFLM` -gt 300 ]; then #rm -f $CACHEFILE,这里也可以直接注释掉不加下面的echo "" > $CACHEFILE echo "" > $CACHEFILE $CMD 2>&1 > /dev/null fi else $CMD 2>&1 > /dev/null Fi # Parse cache file if [ -e $CACHEFILE ]; then cat $CACHEFILE | sed 's/ /\n/g; s/-1/0/g'| grep $ITEM | awk -F: '{print $2}' else echo "ERROR: run the command manually to investigate the problem: $CMD" fi |
[root@zabbix_serv_121_12 scripts]# /usr/local/zabbix/bin/zabbix_get -s 192.161.3.72 -p10050 -k "MySQL.innodb-transactions" 1131684198 [root@zabbix_serv_121_12 scripts]# /usr/local/zabbix/bin/zabbix_get -s 192.161.3.72 -p10050 -k "MySQL.Threads-connected" 4 [root@zabbix_serv_121_12 scripts]# |
相关文章推荐
- 解决MYSQL出现 Can't create/write to file 'C:/WINDOWS/TEMP/#sql_5c0_0.MYD'
- mysql主从设置
- mysql基本操作(表的增删查改)、约束、表设计
- mysql grant命令
- mysql常用命令
- MYSQL使用正则表达式过滤数据
- MySQL Load data
- mysql导入导出sql文件
- MYSQL主从复制
- Mysql慢查询分析与优化
- Mysql主从配置
- Mysql初始安装及配置
- Ubuntu下mysql启用远程访问
- mysql 关于table_lock_wait和table_lock_immediate的问题
- MYSQL搜索引擎------InnoDB
- MySql 插入数据
- MySql删除表
- MySQL学习笔记(二)
- MYSQL的存储引擎介绍------MyISAM引擎
- MySQL远程连接:Host 'x' is not allowed to connect to this MySQL server