Você está visualizando a documentação da versão de desenvolvimento, que pode estar incompleta.
Esta página foi traduzida automaticamente. Se você notar um erro, selecione-o e pressione Ctrl+Enter para reportá-lo aos editores.

1 Criação do banco de dados

Visão geral

Um banco de dados Zabbix deve ser criado durante a instalação do Zabbix server ou proxy.

Esta seção fornece instruções para criar um banco de dados Zabbix. Um conjunto separado de instruções está disponível para cada banco de dados suportado.

Para melhorar a segurança do banco de dados criando funções/usuários de banco de dados com privilégios mínimos, consulte as melhores práticas de criação de banco de dados para cada banco de dados suportado:

Para configurar conexões TLS seguras, consulte Conexão segura com o banco de dados.

UTF-8 é a única codificação suportada pelo Zabbix. Sabe-se que funciona sem falhas de segurança. Os usuários devem estar cientes de que existem problemas de segurança conhecidos ao usar algumas das outras codificações. Para alternar para UTF-8, consulte Reparando o conjunto de caracteres e a collation do banco de dados Zabbix. Veja também Limites de filtragem com collations utf8mb4.

Se estiver instalando a partir do repositório Git do Zabbix, você precisa executar o seguinte comando antes de prosseguir para as próximas etapas:

make dbschema

MySQL/MariaDB

Os conjuntos de caracteres utf8 (também conhecido como utf8mb3) e utf8mb4 são suportados (com as colações utf8_bin e utf8mb4_bin, respectivamente) para que o Zabbix server/proxy funcione corretamente com o banco de dados MySQL. Recomenda-se usar utf8mb4 para novas instalações.

Triggers determinísticos precisam ser criados durante a importação do schema. No MySQL e MariaDB, isso requer que GLOBAL log_bin_trust_function_creators = 1 seja definido se o log binário estiver habilitado e não houver privilégios de superusuário e log_bin_trust_function_creators = 1 não estiver definido no arquivo de configuração do MySQL.

Se você estiver instalando a partir dos pacotes do Zabbix, siga as instruções para sua plataforma.

Se você estiver instalando o Zabbix a partir do código-fonte:

  • Crie e configure um banco de dados e um usuário.
mysql -uroot -p<senha>
       
       mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
       mysql> create user 'zabbix'@'localhost' identified by '<senha>';
       mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost';
       mysql> SET GLOBAL log_bin_trust_function_creators = 1;
       mysql> quit;
  • Importe os dados para o banco de dados e defina o conjunto de caracteres utf8mb4 como padrão. Para um banco de dados de proxy do Zabbix, apenas o schema.sql deve ser importado (não importando images.sql nem data.sql).
cd database/mysql
       mysql -uzabbix -p<senha> zabbix < schema.sql
       # pare aqui se estiver criando o banco de dados para o proxy do Zabbix
       mysql -uzabbix -p<senha> zabbix < images.sql
       mysql -uzabbix -p<senha> --default-character-set=utf8mb4 zabbix < data.sql

log_bin_trust_function_creators pode ser desabilitado após o schema ter sido importado com sucesso:

mysql -uroot -p<senha>
       
       mysql> SET GLOBAL log_bin_trust_function_creators = 0;
       mysql> quit;

PostgreSQL

Você precisa ter um usuário de banco de dados com permissões para criar objetos no banco de dados.

Se você está instalando a partir de pacotes do Zabbix, siga as instruções para sua plataforma.

Se você está instalando o Zabbix a partir do código-fonte:

  • Crie um usuário de banco de dados.

O seguinte comando shell irá criar o usuário zabbix. Especifique uma senha quando solicitado e repita a senha (observe que, primeiro, pode ser solicitada a senha do sudo):

sudo -u postgres createuser --pwprompt zabbix
  • Crie um banco de dados.

O seguinte comando shell irá criar o banco de dados zabbix (último parâmetro) com o usuário criado anteriormente como proprietário (-O zabbix).

sudo -u postgres createdb -O zabbix -E Unicode -T template0 zabbix
  • Importe o schema inicial e os dados (assumindo que você está no diretório raiz do código-fonte do Zabbix). Para um banco de dados de proxy do Zabbix, apenas o schema.sql deve ser importado (não importando images.sql nem data.sql).
cd database/postgresql
       cat schema.sql | sudo -u zabbix psql zabbix
       # pare aqui se você estiver criando o banco de dados para o proxy do Zabbix
       cat images.sql | sudo -u zabbix psql zabbix
       cat data.sql | sudo -u zabbix psql zabbix

Os comandos acima são fornecidos como exemplo e funcionarão na maioria das instalações GNU/Linux. Você pode usar comandos diferentes dependendo de como seu sistema/banco de dados está configurado, por exemplo:

psql -U <username>

Se você tiver qualquer problema ao configurar o banco de dados, consulte o administrador do seu banco de dados.

TimescaleDB

As instruções para criar e configurar o TimescaleDB são fornecidas em uma seção separada.

SQLite

O uso do SQLite é suportado apenas para o Zabbix proxy!

O banco de dados será criado automaticamente se não existir.

Retorne à seção de instalação.