最近不少人都問我如何爲何使用我以前博客的模板不能監控了,通過溝通發現對方的mysql版本是5.6,在進行命令行查看數據的實話,使用mysql -uxxx -pxxx -Pxxx的時候,會以下報錯mysql
Warning: Using a password on the command line interface can be insecure
報錯緣由是mysql 5.6版本增長了密碼安全策略,以前版本可使用的命令行里加上密碼就會強制報錯,因此使用zabbix lld監控mysql的時候,就會因爲收到此報錯致使沒辦法監控。web
解決的方法爲:sql
第一種:使用mysql 5.5的客戶端安全
第二種:使用--login-path(推薦)bash
1、mysql配置ide
下面是介紹如何使用--login-path設置測試
mysql_config_editor set --login-path=local --host=localhost --user=zabbix -p
命令解釋:ui
--login-path是設置訪問的名字,我設置的local;spa
--host是指定容許訪問的host地址,這個地址是你grant的時候配置的;命令行
--user是用戶名,也是grant時候配置的;
-p是指定密碼,一樣是grant配置。
運行上面命令後,會要求你屬於密碼,輸入後會什麼反饋都沒有,可使用下面命令查看
15:35:38 # mysql_config_editor print --all [local] user = zabbix password = ***** host = localhost
測試
15:35:40 # mysql --login-path=local Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 741 Server version: 5.6.19-67.0-log Percona Server (GPL), Release 67.0, Revision 618 Copyright (c) 2009-2014 Percona LLC and/or its affiliates Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> quit
上面就配置好了mysql安全模式訪問
2、zabbix agentd配置
下面介紹zabbix客戶端配置文件裏key的狀況
默認客戶端的key是
UserParameter=mysql_stats[*],mysql -h localhost -P $1 -uzabbix -pzabbix -e "show global status"|grep "\<$2\>"|cut -f2 UserParameter=mysql_stats_slave[*],mysql -h localhost -P $1 -uzabbix -pzabbix -e "show slave status\G"|grep "\<$2\>"|awk '{if($NF=="Yes") {print 1} else {print 0}}'
修改成
UserParameter=mysql_stats_5.6[*],sudo mysql --login-path=local -P $1 -e "show global status"|grep "\<$2\>"|cut -f2 UserParameter=mysql_stats_slave_5.6[*],sudo mysql --login-path=local -P $1 -e "show slave status\G"|grep "\<$2\>"|awk '{if($NF=="Yes") {print 1} else {print 0}}'
而後配置sudo,在/etc/sudoers裏添加
zabbix ALL=(root) NOPASSWD:/usr/bin/mysql
其中/usr/bin/mysql是mysql程序地址,能夠根據你自身狀況修改。
完成後重啓zabbix agentd
ps -ef|grep zabbix|grep -v grep|awk '{print $2}'|xargs kill -9 /usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/conf/zabbix_agentd.conf
其餘的配置參考以前監控mysql的就行
3、zabbix web配置
A、模板導入
把Template Mysql 5.6 Auto Discovery導入到zabbix裏(模板在附件),具體操做不介紹。
B.主機關聯模板
把須要監控mysql 5.6版本的主機管理模板便可監控,默認是3600秒後自動更新。