Baza danych Zabbixa musi być utworzona podczas instalacji serwera Zabbix lub proxy.
Ta sekcja zawiera instrukcje dotyczące tworzenia bazy danych Zabbixa. Dostępny jest oddzielny zestaw instrukcji dla każdej obsługiwanej bazy danych.
UTF-8 jest jedynym kodowaniem obsługiwanym przez Zabbixa. Wiadomo, że działa bez żadnych wad związanych z bezpieczeństwem. Użytkownicy powinni być świadomi, że istnieją znane problemy związane z bezpieczeństwem przy użyciu niektórych innych kodowań.
Jeśli instalujesz z repozytorium Git Zabbixa, musisz najpierw wykonać następującą komendę, zanim przejdziesz do kolejnych kroków:
make dbschema
Zbiory znaków utf8 (także utf8mb3) i utf8mb4 są obsługiwane (odpowiednio z kolekcją utf8_bin i utf8mb4_bin) dla prawidłowego działania serwera/proxy Zabbixa z bazą danych MySQL. Zaleca się używanie utf8mb4 dla nowych instalacji.
Dla Zabbixa w wersji 6.0.11 i nowszych, wyzwalacze deterministyczne muszą być tworzone podczas importu schematu. W przypadku MySQL i MariaDB wymaga to ustawienia GLOBAL log_bin_trust_function_creators = 1
, jeśli jest włączone logowanie binarne i nie ma uprawnień superużytkownika, a log_bin_trust_function_creators = 1 nie jest ustawione w pliku konfiguracyjnym MySQL.
Jeśli instalujesz Zabbixa z pakietów, przejdź do instrukcji dla twojej platformy.
Jeśli instalujesz Zabbixa ze źródeł:
mysql -uroot -p<hasło>
mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
mysql> create user 'zabbix'@'localhost' identified by '<hasło>';
mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost';
mysql> SET GLOBAL log_bin_trust_function_creators = 1;
mysql> quit;
schema.sql
(bez images.sql ani data.sql).cd database/mysql
mysql -uzabbix -p<hasło> zabbix < schema.sql
# zatrzymaj się tutaj, jeśli tworzysz bazę danych dla Zabbixa proxy
mysql -uzabbix -p<hasło> zabbix < images.sql
mysql -uzabbix -p<hasło> zabbix < data.sql
log_bin_trust_function_creators
można wyłączyć po pomyślnym zaimportowaniu schematu:
Musisz mieć użytkownika bazy danych z uprawnieniami do tworzenia obiektów bazy danych.
Jeśli instalujesz z pakietów Zabbixa, przejdź do instrukcji dla twojej platformy.
Jeśli instalujesz Zabbixa ze źródeł:
Następująca komenda powłoki utworzy użytkownika zabbix
. Podaj hasło, gdy zostaniesz o to poproszony, i powtórz hasło (zauważ, że możesz być najpierw poproszony o hasło sudo
):
Następująca komenda powłoki utworzy bazę danych zabbix
(ostatni parametr) z wcześniej utworzonym użytkownikiem jako właścicielem (-O zabbix
).
Dla bazy danych proxy Zabbixa, należy zaimportować tylko schema.sql
(bez images.sql ani data.sql).
cd database/postgresql
cat schema.sql | sudo -u zabbix psql zabbix
# zatrzymaj się tutaj, jeśli tworzysz bazę danych dla Zabbixa proxy
cat images.sql | sudo -u zabbix psql zabbix
cat data.sql | sudo -u zabbix psql zabbix
Powyższe komendy są podane jako przykład, który będzie działał w większości instalacji GNU/Linux. Możesz użyć innych poleceń, w zależności od tego, jak jest skonfigurowany twój system/baza danych, na przykład:
psql -U <nazwa_użytkownika>
Jeśli masz problemy z konfiguracją bazy danych, skonsultuj się z administratorem bazy danych.
Instrukcje dotyczące tworzenia i konfigurowania TimescaleDB są dostarczane w osobnej sekcji.
Instrukcje dotyczące tworzenia i konfigurowania bazy danych Oracle są dostarczane w osobnej sekcji.
Używanie SQLite jest obsługiwane tylko dla proxy Zabbix!
Baza danych zostanie automatycznie utworzona, jeśli nie istnieje.
Powróć do sekcji instalacji.