Zabbix web не соединяется с БД

Рейтинг: 0Ответов: 1Опубликовано: 12.01.2023

Установил на виртуальный сервер zabbix 6.2. В качестве хранилища MySQL 8.0.31. На виртуальной машине стоит Ubuntu 22.04. Все ровно так же как по инструкции https://www.zabbix.com/download?zabbix=6.2&os_distribution=ubuntu&os_version=22.04&components=server_frontend_agent&db=mysql&ws=apache. Пароли и в /etc/zabbix/zabbix_server.conf, и в /etc/zabbix/web/zabbix.conf.php одинаковы

DBName=zabbix
DBUser=zabbix
DBPassword=10xx83
$DB['TYPE']                     = 'MYSQL';
$DB['SERVER']                   = 'localhost';
$DB['PORT']                     = '0';
$DB['DATABASE']                 = 'zabbix';
$DB['USER']                     = 'zabbix';
$DB['PASSWORD']                 = '10xX83';

В логах ошибок нет, все запускается нормально, но при попытке зайти на http://localhost/zabbix выдает следующую ошибку и дальше не идет

Ошибка яфиишч

UPDATE

/**
     * Create connection to database server.
     *
     * @param string $host         Host name.
     * @param string $port         Port.
     * @param string $user         User name.
     * @param string $password     Password.
     * @param string $dbname       Database name.
     * @param string $schema       DB schema.
     *
     * @return mysqli|null
     */
    public function connect($host, $port, $user, $password, $dbname, $schema): ?mysqli {
        mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
        print_r($host, $port, $user, $password, $dbname, $schema);
        $resource = mysqli_init();

        if ($resource === false) {
            return null;
        }

        if ($this->tls_encryption) {
            $cipher_suit = $this->tls_cipher_list !== '' ? $this->tls_cipher_list : null;
            $resource->ssl_set($this->tls_key_file, $this->tls_cert_file, $this->tls_ca_file, null, $cipher_suit);

            $tls_mode = MYSQLI_CLIENT_SSL;
        }
        else {
            $tls_mode = 0;
        }

        try {
            @$resource->real_connect($host, $user, $password, $dbname, $port, null, $tls_mode);
        }
        catch (mysqli_sql_exception $e) {
            $this->setError($e->getMessage());

            return null;
        }

        if ($resource->autocommit(true) === false) {
            $this->setError('Error setting auto commit.');

            return null;
        }

        return $resource;
    }

Решение Все таки в /etc/zabbix/web/zabbix.conf.php был неверно вбит пароль, после правки все заработало

Ответы

▲ 0Принят

Проблема была в неправильно вбитом пароле в файле /etc/zabbix/web/zabbix.conf.php