说说一个困扰自已两天的问题。

首先是用常规的方法安装上了mysql数据库。做了主从。

在监控从库的时候,发现所有的监控数据库的监控项都获取不到key值 。

zabbix server端也不报错。获取到的值为空的。在zabbix agent和zabbix server都看不到明显的报错。数据库错误日志没也有任何信息。

空想冥思了两天。

最后排除方法如下:

1.首先在zabbix server端要么是空值,要么是sock连上的。

[root@zabbix ~]# zabbix_get -s 10.0.0.52 -k "MySQL.running-slave"

[root@zabbix ~]# tailf /var/log/zabbix/zabbix_server.log
19203:20171220:102048.643 cannot link template(s) "Template OS Linux active", "Template TCP Connection Status Active" to host "lb01": conflicting item key "kernel.maxfiles" found
19203:20171220:102120.668 cannot link template(s) "Template OS Linux active", "Template TCP Connection Status Active" to host "web01_pop": conflicting item key "kernel.maxfiles" found
19203:20171220:102120.679 cannot link template(s) "Template OS Linux active", "Template TCP Connection Status Active" to host "web03_api": conflicting item key "kernel.maxfiles" found
19207:20171220:103910.370 item "cashloan-db02:MySQL.running-slave" became not supported: Received value [] is not suitable for value type [Numeric (unsigned)] and data type [Decimal]

2.在agent端执行却是没有问题的,但在server端总是没有值。

3.但在agent执行是以root身份。最后把zabbix用户在/etc/passwd里的/sbin/nologin改为/bin/bash

切换到zabbix用户后执行也是报同样的错误。看来问题不是出在zabbix这块,而是数据库的设置问题。

4.用zabbix用户执行mysql命令登陆数据库用-S指定sock时发现不能补全。

最后ll /application/mysql/data/mysql.sock发现报没有权限。

这时终于知道问题出在哪了。

最后切换到root发现/application/mysql/data的权限为700.

修改为755后OK。

权限问题导致zabbix无法监控mysql的更多相关文章

  1. 带你了解zabbix如何监控mysql主从到报警触发

    本章博客我们一起来聊一聊如何监控mysql数据库主从状态? 思路梳理: 1)首先我们都知道,判断Mysql主从是否正常,是通过主从上面的SQL和IO线程都为yes状态判断(通过awk取值,grep过滤 ...

  2. zabbix之监控MySQL

    #:先配置MySQL的主从 #:安装Percona Monitoring Plugins (地址:https://www.percona.com/downloads/)#:我安在从库,监控哪个就安哪个 ...

  3. zabbix之 zabbix模板监控mysql

    zabbix中默认有mysql的监控模板.默认已经在zabbix2.2及以上的版本中.模板名称:Template App MySQL.如果没有则要去zabbix官方下载 url:https://zab ...

  4. zabbix脚本监控mysql

    Zabbix监控mysql 1.1 客户端配置 1.1.1 安装客户端包 yum -y install unixODBC rpm -ivh zabbix-agent--.el6.x86_64.rpm ...

  5. zabbix添加监控Mysql

    起因:zabbix自带的mysql监控模板直接使用会显示“不支持的”因为key的值是通过Mysql用户查看"show global status"信息或者用mysqladmin命令 ...

  6. zabbix自定义监控mysql

    创建用户: use mysql; grant all privileges on *.* to 'zabbix'@'%' identified by 'zabbixpasswd'; grant all ...

  7. zabbix实时监控mysql业务数据

    1. 安装zabbix agent 下载zabbix:过往的软件包都有:https://sourceforge.mirrorservice.org/z/za/zabbix/ZABBIX%20Lates ...

  8. linux的mysql权限错误导致看不到mysql数据库

    1.首先停止mysql服务:service mysqld stop2.加参数启动mysql:/usr/bin/mysqld_safe --skip-grant-tables & 然后就可以无任 ...

  9. zabbix全方位监控MySQL +cacti监控mysql

    http://www.linuxidc.com/Linux/2015-02/112690.htm http://john88wang.blog.51cto.com/2165294/1596272?ut ...

随机推荐

  1. Redis的key过期处理策略

    Redis中有三种处理策略:定时删除.惰性删除和定期删除. 定时删除:在设置键的过期时间的时候创建一个定时器,当过期时间到的时候立马执行删除操作.不过这种处理方式是即时的,不管这个时间内有多少过期键, ...

  2. 微信跳一跳辅助Demo

    [原创] 前几天没事干看别人一直在玩微信上线的那一个跳一跳小游戏,玩着玩着老是掉下去,闲着没事呗 就想了想做一个辅助程序的呗.不过先做的手动版的.自动版的有点麻烦.就不发了.用的Java写的,也就一个 ...

  3. React Native:真机断点调试+跨域资源加载出错问题解决

    写在前面 闲来无事,折腾了一下React Native,相比之前,开发体验好了不少.但在真机断点调试那里遇到了跨域资源加载出错的问题,一番探索总算解决,目测是RN新版本调试服务的bug. 遇到类似问题 ...

  4. 【三十一】thinkphp之安装、配置、模块化及URL模式

    一:安装与配置 1.获取ThinkPHP 下载地址:http://www.thinkphp.cn/down.html 2.入口文件 ThinkPHP采用单一入口模式对项目进行部署和访问,所以我们需要通 ...

  5. golang 在 windows 下编译出 linux 二进制可执行文件的软件套装合集 [go 1.7.3环境]

    golang 很好用,不过要把工具链弄完整. 要不你会发现怎么不能编译跨平台的呀? 怎么写代码没提示啊? ... 这一整套弄下来并不容易. 所以精心准备了一套工具方便大家使用. 软件列表如图. 安装顺 ...

  6. Android自定义安全键盘

    在银行APP里经常要自定义键盘,例如实现下面这样的效果       首先在xml文件里定义键盘 <Keyboard xmlns:android="http://schemas.andr ...

  7. 使用JSON JavaScriptSerializer 进行序列化或反序列化时出错。字符串的长度超过了为 maxJsonLength属性

    "/"应用程序中的服务器错误.使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错.字符串的长度超过了为 maxJsonLength 属性设置的值. ...

  8. Codeforces Round #409 (rated, Div. 2, based on VK Cup 2017 Round 2)(A.思维题,B.思维题)

    A. Vicious Keyboard time limit per test:2 seconds memory limit per test:256 megabytes input:standard ...

  9. 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 F. Trig Function(切比雪夫多项式+乘法逆元)

    题目链接:哈哈哈哈哈哈 _(:з」∠)_ _(:з」∠)_ _(:з」∠)_ _(:з」∠)_ _(:з」∠)_ 哈哈哈哈哈哈,从9月16日打了这个题之后就一直在补这道题,今天终于a了,哈哈哈哈哈哈. ...

  10. JS验证两次输入密码是否相同

    js中 <script>function check(){ with(document.all){if(input1.value!=input2.value){alert("fa ...