Zabbix 4.4 + Nginx + MySQL 8

Решил установить с сайта, с новым Mysq и заодно на nginx
Ставить буду на Debian 10
https://www.zabbix.com/download?zabbix=4.4&os_distribution=debian&os_version=10_buster&db=mysql&ws=nginx
Как обычно многое что изменилось и просто следуя инструкции ничего установить не вышло
Поэтому начнем подряд

Установка Mysql 8

Качаем репозитарий Mysql
https://dev.mysql.com/downloads/repo/apt/
Устанавливаем

wget https://dev.mysql.com/get/mysql-apt-config_0.8.14-1_all.deb
apt install gnupg
dpkg -i mysql-apt-config_0.8.14-1_all.deb
apt update
apt install mysql-server

Установка базы

Инструкция на сайте

# mysql -uroot -p
password
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'password';
mysql> quit;

Получаем ошибку при предоставлении прав на базу

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'identified by 'password'' at line 1

Как надо в Mysql 8
Создаем базу
Создаем пользователя zabbix с паролем password (у вас свой)
Даем пользователю привилегии на базу

# mysql -uroot -p
password
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user 'zabbix'@'localhost' identified by 'password';
mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost';
mysql> quit;
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

Nginx

Ставим Nginx и удаляем дэфолтный сайт, так как вместо него будет работать zabbix.
Если этого не сделать то будем получать начальную страницу nginx

apt install nginx
cd /etc/nginx/sites-enabled
rm default
service nginx restart

Согласно официальной инструкции прописываем пароль в конфигурацию сервера DBPassword=password
Переходим на сайт для WEB конфигурации и смотрим чего не хватает для нормальной работы
http://10.10.20.20/

Ставим недостающие модули php

apt install php-mbstring php-bcmath php-xml -y

Устанавливаем временную зону php
Зону берем по ссылке
https://www.php.net/manual/ru/timezones.europe.php

nano /etc/php/7.3/fpm/php.ini
date.timezone = Europe/Moscow
service php7.3-fpm restart

Ошибка подключения к базе
The server requested authentication method unknown to the client

Меняем схему аутэнтификации

nano /etc/mysql/my.cnf
[mysqld]
...
default_authentication_plugin   = mysql_native_password
...
service mysql restart

Так как пользователь был добавлен ранее, то применяем схему к нему

mysql -u root -p
ALTER USER 'zabbix'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

Затем указываем имя сервера и заходим для настройки
Admin \ zabbix

На этапе установки не забываем смотреть официальную инструкцию, и иногда перезапускать сервисы

service zabbix-server restart
service nginx restart
service php7.3-fpm
service mysql restart

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *