搭建zabbix的过程中,使用web登陆本机zabbix首页的时候出现了“Database error Error connecting to database: Access denied for user 'root'@'localhost' (using password: YES)”的提示,在直接登陆centos7上直接登陆zabbix也出现相同告警:
[root@centos7 ~]# mysql -u zabbix -pzabbix
ERROR 1045 (28000): Access denied for user 'zabbix'@'localhost' (using password: YES)
使用zabbix帐号密码无法登陆mariadb。
使用root账号登陆数据库,发现异常zabbix用户有2处重复了,使用drop user zabbix@localhost;删除1个,可以使用zabbix的用户名密码登陆了,但是网页报错还是没有变化。
MariaDB [zabbix]> select host,user
-> from mysql.user;
+-----------+--------+
| host | user |
+-----------+--------+
| % | zabbix |
| 127.0.0.1 | root |
| ::1 | root |
| centos7 | root |
| localhost | root |
| localhost | zabbix |
+-----------+--------+
查看/var/log下面的zabbix日志也无异常。想到web页面无法登陆,而zabbix是由zabbix-server,zabbix-web和mysql组成的。mysql没有问题,那可能就是zabbix-web界面配置的问题了。如果是yum安装,在/etc/zabbix/web下;如果是源码安装,在/usr/local/zabbix/etc下。最后,修改配置文件zabbix.conf.php的DB server,password信息,故障排除。
$DB['TYPE'] = 'MYSQL';
$DB['SERVER'] = 'localhost';
$DB['PORT'] = '0';
$DB['DATABASE'] = 'zabbix';
$DB['USER'] = 'zabbix';
$DB['PASSWORD'] = 'zabbix';