Esta página orienta você nas etapas necessárias para iniciar o monitoramento básico de um servidor MySQL.
Para monitorar um servidor MySQL, existem várias abordagens: agent Zabbix, agent Zabbix 2 ou o padrão Open Database Connectivity (ODBC). O foco principal deste guia é o monitoramento de um servidor MySQL com o agent Zabbix 2, que é a abordagem recomendada devido à sua configuração simplificada em diferentes ambientes. No entanto, esta página também oferece instruções para as outras abordagens, portanto, sinta-se à vontade para escolher a que melhor se adapta às suas necessidades.
Para quem é este guia
Este guia foi desenvolvido para novos usuários do Zabbix e contém o conjunto mínimo de etapas necessárias para habilitar o monitoramento básico de um servidor MySQL. Se você procura opções de personalização avançadas ou precisa de uma configuração mais avançada, consulte a seção Configuração do manual do Zabbix.
Pré-requisitos
Antes de prosseguir com este guia, você precisa baixar e instalar o Zabbix server, o Zabbix frontend e o Zabbix agent 2 de acordo com as instruções para o seu sistema operacional.
Com base na sua configuração, algumas das etapas deste guia podem ser ligeiramente diferentes. Este guia é baseado na seguinte configuração:
Para monitorar um servidor MySQL, o Zabbix requer acesso a ele e seus processos. Sua instalação do MySQL já possui um usuário com o nível de acesso necessário (o usuário "zabbix" que foi criado ao instalar o Zabbix), no entanto, esse usuário possui mais privilégios do que o necessário para um monitoramento simples (privilégios para DROP de bancos de dados, DELETE de entradas de tabelas, etc.). Portanto, um usuário MySQL para o propósito de apenas monitorar o servidor MySQL precisa ser criado.
1. Conecte-se ao cliente MySQL, crie um usuário "zbx_monitor" (substitua <password> para o usuário "zbx_monitor" por uma senha de sua escolha), e GRANT os privilégios necessários ao usuário:
mysql -u root -p
# Digite a senha:
mysql> CREATE USER 'zbx_monitor'@'%' IDENTIFIED BY '<password>';
mysql> GRANT REPLICATION CLIENT,PROCESS,SHOW DATABASES,SHOW VIEW ON *.* TO 'zbx_monitor'@'%';
mysql> quit;Depois que o usuário for criado, você pode passar para a próxima etapa.
1. Faça login no frontend do Zabbix.
2. Crie um host na interface web do Zabbix:


3. Clique em Adicionar para adicionar o host. Este host representará seu servidor MySQL.
Parabéns! Neste ponto, o Zabbix já está monitorando seu servidor MySQL.
Para visualizar as métricas coletadas, navegue até a seção de menu Monitoramento → Hosts e clique em Dashboards ao lado do host.

Esta ação o levará ao dashboard do host (configurado no nível do template) com as métricas mais importantes coletadas do servidor MySQL.

Alternativamente, a partir da seção de menu Monitoramento → Hosts, você pode clicar em Últimos dados para visualizar todas as métricas coletadas mais recentes em uma lista. Observe que o item MySQL: Calculated value of innodb_log_file_size deve estar sem dados, pois o valor será calculado a partir dos dados da última hora.

O Zabbix pode notificá-lo sobre um problema em sua infraestrutura usando vários métodos. Este guia fornece etapas básicas de configuração para o envio de alertas por e-mail.
1. Navegue até Configurações do usuário → Perfil, alterne para a guia Mídia e adicione seu e-mail.

2. Siga o guia para Receber uma notificação de problema.
Da próxima vez que o Zabbix detectar um problema, você deverá receber um alerta por e-mail.
Para testar sua configuração, podemos simular um problema real atualizando a configuração do host no frontend do Zabbix.
1. Abra a configuração do host do seu servidor MySQL no Zabbix.
2. Mude para a aba Macros e selecione Macros herdadas e do host.
3. Clique em Alterar ao lado, por exemplo, do valor da macro {$MYSQL.USER} configurado anteriormente e defina um nome de usuário MySQL diferente.
4. Clique em Atualizar para atualizar a configuração do host.
5. Em alguns instantes, o Zabbix detectará o problema "MySQL: Service is down", pois não conseguirá se conectar ao servidor MySQL. O problema aparecerá em Monitoramento → Problemas.

Se os alertas estiverem configurados, você também receberá a notificação do problema.
6. Altere o valor da macro de volta ao valor anterior para resolver o problema e continuar monitorando o servidor MySQL.
Em vez de monitorar um servidor MySQL com o Zabbix agent 2, você também pode usar o Zabbix agent ou o padrão Open Database Connectivity (ODBC). Embora o uso do Zabbix agent 2 seja recomendado, pode haver algumas configurações que não suportam o Zabbix agent 2 ou exigem uma abordagem personalizada.
A principal diferença entre o Zabbix agent e o ODBC está no método de coleta de dados - o Zabbix agent é instalado diretamente no servidor MySQL e coleta dados usando sua funcionalidade interna, enquanto o ODBC depende de um driver ODBC para estabelecer uma conexão com o servidor MySQL e recuperar dados usando consultas SQL.
Embora muitas das etapas de configuração sejam semelhantes ao monitoramento de um servidor MySQL com o Zabbix agent 2, existem algumas diferenças significativas - você precisa configurar o Zabbix agent ou o ODBC para poder monitorar um servidor MySQL. As instruções a seguir orientam você por essas diferenças.
Para monitorar um servidor MySQL com o Zabbix agent, você precisa baixar e instalar o Zabbix server, o Zabbix frontend e o Zabbix agent de acordo com as instruções para o seu sistema operacional.
Depois de instalar com sucesso os componentes necessários do Zabbix, você precisa criar um usuário MySQL conforme descrito na seção Criar usuário MySQL.
Após criar o usuário MySQL, você precisa configurar o Zabbix agent para que ele possa estabelecer uma conexão com o servidor MySQL e monitorá-lo. Isso inclui configurar vários parâmetros de usuário para executar verificações personalizadas do agent, bem como fornecer ao Zabbix agent as credenciais necessárias para conectar-se ao servidor MySQL como o usuário "zbx_monitor" criado anteriormente.
Configurar o agent Zabbix
1. Navegue até o diretório de configurações adicionais do agent Zabbix.
O diretório de configurações adicionais do agent Zabbix deve estar localizado no mesmo diretório que o arquivo de configuração do agent Zabbix (zabbix_agentd.conf). Dependendo do seu sistema operacional e da instalação do Zabbix, este diretório pode ter um local diferente do especificado neste guia. Para os locais padrão, verifique o parâmetro Include no arquivo de configuração do agent Zabbix.
Em vez de definir todos os parâmetros de usuário necessários para monitorar o servidor MySQL no arquivo de configuração do agent Zabbix, esses parâmetros serão definidos em um arquivo separado no diretório de configurações adicionais.
2. Crie um arquivo template_db_mysql.conf no diretório de configurações adicionais do agent Zabbix.
3. Copie o conteúdo do arquivo template_db_mysql.conf (localizado no repositório do Zabbix) para o arquivo template_db_mysql.conf que você criou e salve.
4. Reinicie o agent Zabbix para atualizar sua configuração.
Depois de configurar os parâmetros de usuário do agent Zabbix, você pode prosseguir para configurar as credenciais que permitirão que o agent Zabbix acesse o servidor MySQL.
5. Navegue até o diretório inicial do agent Zabbix (se não existir em seu sistema, você precisa criá-lo; padrão: /var/lib/zabbix).
6. Crie um arquivo .my.cnf no diretório inicial do agent Zabbix.
7. Copie o seguinte conteúdo para o arquivo .my.cnf (substitua <password> pela senha do usuário "zbx_monitor").
Configure o frontend do Zabbix e teste sua configuração
Para configurar o frontend do Zabbix, siga as instruções na seção Configure o frontend do Zabbix com os seguintes ajustes:
Depois de configurar o frontend do Zabbix, você pode visualizar as métricas coletadas e configurar alertas de problemas.
Para testar sua configuração, siga as instruções na seção Teste sua configuração com os seguintes ajustes:

Para monitorar um servidor MySQL com ODBC, você precisa baixar e instalar o Zabbix server e o Zabbix frontend.
Depois de instalar com sucesso os componentes necessários do Zabbix, você precisa criar um usuário MySQL conforme descrito na seção Criar usuário MySQL.
Após criar o usuário MySQL, é necessário configurar o ODBC. Isso inclui instalar uma das implementações de API ODBC de código aberto mais utilizadas - unixODBC - e um driver unixODBC, além de editar o arquivo de configuração do driver ODBC.
Configurar ODBC
1. Instale o unixODBC. A maneira recomendada de instalar o unixODBC é usar os repositórios de pacotes padrão do sistema operacional Linux.
2. Instale o driver de banco de dados unixODBC do MariaDB. Embora você tenha um banco de dados MySQL, o driver unixODBC do MariaDB é usado por questões de compatibilidade.
3. Verifique a localização dos arquivos de configuração do ODBC odbcinst.ini e odbc.ini.
O resultado da execução deste comando deve ser semelhante ao seguinte.
unixODBC 2.3.9
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
...4. Para configurar o driver ODBC para monitorar um banco de dados MySQL, você precisa do nome do driver, que está localizado no arquivo odbcinst.ini. No exemplo a seguir do arquivo odbcinst.ini, o nome do driver é "MariaDB Unicode".
[MariaDB Unicode]
Driver=libmaodbc.so
Description=MariaDB Connector/ODBC(Unicode)
Threading=0
UsageCount=15. Copie o seguinte conteúdo para o arquivo odbc.ini (substitua <password> pela senha do usuário "zbx_monitor"). Este guia usa "127.0.0.1" (localhost) como o endereço do servidor MySQL para monitorar um servidor MySQL que está instalado na mesma máquina que o driver ODBC. Observe o nome da fonte de dados (DSN) "test", que será necessário ao configurar o frontend do Zabbix.
[test]
Driver=MariaDB Unicode
Server=127.0.0.1
User=zbx_monitor
Password=<password>
Port=3306
Database=zabbixConfigure o frontend do Zabbix e teste sua configuração
Para configurar o frontend do Zabbix, siga as instruções na seção Configure o frontend do Zabbix com os seguintes ajustes:
Depois de configurar o frontend do Zabbix, você pode visualizar as métricas coletadas, configurar alertas de problemas e testar sua configuração.