[email protected] slave:zabbix/ cat /etc/os release NAME='Ubuntu' VERSION='18.04.5 LTS Bionic Beaver ' ID=ubuntu ID LIKE=debian PRETTY NAME='Ubuntu 18.04...">

当前位置:网站首页>zabbix_get测试数据库失败

zabbix_get测试数据库失败

2022-07-06 23:54:00 知本知至

环境

[email protected]:zabbix#cat /etc/os-release 
NAME="Ubuntu"
VERSION="18.04.5 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.5 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
mysql> select version();
+-------------------------+
| version()               |
+-------------------------+
| 5.7.38-0ubuntu0.18.04.1 |
+-------------------------+
1 row in set (0.00 sec)
[email protected]:zabbix_server#sbin/zabbix_server -V
zabbix_server (Zabbix) 4.0.42
Revision f5370d9acb1 28 June 2022, compilation time: Jul  3 2022 13:46:14

Copyright (C) 2022 Zabbix SIA
License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it according to
the license. There is NO WARRANTY, to the extent permitted by law.

描述

在配置zabbix自定义监控脚本进行监控从数据库时,

自定义脚本在本地跑起来正常,在zabbis server上使用zabbix_get命令时候就出现错误

[email protected]:bin#/apps/zabbix_server/bin/zabbix_get -s 10.0.0.84 -p 10050 -k "mysql_status[master_slave_check]"
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
100

脚本,监控项等等都没有问题。

原因

MySQL启用了auth_socket plugin插件导致的。

auth_socket plugin 套接字插件检查套接字用户名(操作系统用户名)是否与客户端程序为服务器指定的MySQL用户名匹配。 如果名称不匹配,插件将检查套接字用户名是否 authentication_string 与 mysql.user 系统表行 的 列中 指定的名称匹配 。 如果找到匹配项,则插件允许连接。

验证

[email protected]:zabbix#mysql -uroot -e 'select user,host,plugin from mysql.user;'
+------------------+-----------+-----------------------+
| user             | host      | plugin                |
+------------------+-----------+-----------------------+
| root             | localhost | auth_socket           |
| mysql.session    | localhost | mysql_native_password |
| mysql.sys        | localhost | mysql_native_password |
| debian-sys-maint | localhost | mysql_native_password |
| zabbix           | 10.0.0.%  | mysql_native_password |

解决

修改root用户的密码认证插件为mysql_native_password

mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> update user set plugin='mysql_native_password' where user='root';
Query OK, 1 row affected (0.00 sec)
Rows matched: 2  Changed: 1  Warnings: 0

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> select user,host,plugin from user;
+------------------+-----------+-----------------------+
| user             | host      | plugin                |
+------------------+-----------+-----------------------+
| root             | localhost | mysql_native_password |

在zabbix_server进行测试

[email protected]:bin#/apps/zabbix_server/bin/zabbix_get -s 10.0.0.84 -p 10050 -k "mysql_status[master_slave_check]"
50
原网站

版权声明
本文为[知本知至]所创,转载请带上原文链接,感谢
https://blog.csdn.net/qq_43652666/article/details/125645657