Я установил Zabbix на удаленный сервер CentOS 7, но не могу запустить его.
Я посмотрел на /var/log/zabbix/
и я получаю следующую ошибку:
1951:20190116:044530.834 [Z3001] connection to database 'zabbix' failed: [1045] Access denied for user 'zabbix'@'localhost' (using password: YES)
Теперь проблема в том, что у меня есть база данных для zabbix, но она называется zabbixdb
не zabbix
(как в сообщении об ошибке)
Я попытался повторно запустить страницу настройки и ввел zabbixdb
, но все равно ничего. Так же /etc/zabbix/web/zabbix.conf.php
правильно настроен
global $DB;
$DB['TYPE'] = 'MYSQL';
$DB['SERVER'] = '127.0.0.1';
$DB['PORT'] = '0';
$DB['DATABASE'] = 'zabbixdb';
$DB['USER'] = 'zabbixuser';
$DB['PASSWORD'] = '[my_pass_here]';
// Schema name. Used for IBM DB2 and PostgreSQL.
$DB['SCHEMA'] = '';
$ZBX_SERVER = '127.0.0.1';
$ZBX_SERVER_PORT = '10051';
$ZBX_SERVER_NAME = 'SV Zabbix Server';
$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;
Я сделал двойной чек и zabbixdb
ДЕЙСТВИТЕЛЬНО существует и пользователь zabbixuser
имеет все привилегии над ним.
GRANT ALL PRIVILEGES ON `zabbixdb`.* TO 'zabbixuser'@'localhost'
Какие еще могут быть причины? Каким-то образом у zabbix есть доступ, потому что он создал таблицы в zabbixdb
, но не могу их использовать.
РЕДАКТИРОВАТЬ: Решение
Оказывается, я слепо следовал инструкциям руководства. Спасибо @Zatarra за решение.
Моя проблема заключалась в том, что, когда я писал учетные данные БД, я писал их точно в верхней части файла, в то время как они также присутствовали на более низком уровне и, таким образом, при чтении были перезаписаны в памяти.
Я решил это, изменив переменные, присутствующие на нижнем уровне файла.
Попробуйте перезапустить службу и проверьте, пытается ли она по-прежнему использовать базу данных zabbix в журналах. Если он действительно проверяет, есть ли у вас повторяющиеся записи DBName в zabbix_server.conf
grep DBName /etc/zabbix/zabbix_server.conf
И вы получаете сообщение об ошибке для zabbix web или для zabbix сервера? Насколько я понимаю, вы вставляете веб-конфигурацию, возможно, вы ищете не в том месте.