Monitoramento MySQL · 5 min read · Sep 15, 2025
Como Monitorar MySQL ou MariaDB com Prometheus e Grafana

Para garantir que o servidor MySQL/MariaDB esteja funcionando corretamente, você precisa implementar monitoramento em sua infraestrutura. Isso permite otimizar o desempenho, identificar problemas/gargalos e garantir que seu banco de dados esteja saudável. Com Prometheus e Grafana, você pode alcançar isso e criar um belo monitoramento de painel para servidores MySQL.
Neste guia, você aprenderá como monitorar servidores MySQL/MariaDB com Prometheus e Grafana. Você configurará o ‘prometheus-mysqld-exporter’ para gerar métricas e adicionar o monitoramento de endpoint ao servidor Prometheus. Depois disso, você criará um novo painel Grafana para monitoramento do MySQL.
Pré-requisitos
Para começar, certifique-se de ter o seguinte:
- Um servidor MySQL/MariaDB instalado
- Um usuário não-root com privilégios de administrador
- Prometheus e Grafana instalados em seu servidor
Configurar usuário MySQL/MariaDB
Para monitorar o servidor MySQL/MariaDB, você precisa criar um novo usuário MySQL dedicado. Este usuário terá os menores privilégios, como PROCESS, REPLICATION CLIENT e SELECT em todos os seus bancos de dados.
Nesta seção, você criará um novo usuário MySQL para monitorar seu servidor MySQL.
Faça login no seu servidor MySQL/MariaDB com o seguinte. Digite sua senha ‘ root ‘ quando solicitado.
sudo mysql -u root -pAgora execute as seguintes consultas para criar um novo usuário MySQL ‘ prometheus ‘ com a autenticação ‘ unix_socket ‘. Este usuário terá privilégios para ver processos, clientes de replicação e selecionar em todos os bancos de dados no servidor MySQL.
CREATE USER IF NOT EXISTS 'prometheus'@'localhost' IDENTIFIED WITH unix_socket;
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'prometheus'@'localhost';
FLUSH PRIVILEGES;Em seguida, execute a consulta abaixo para verificar o usuário MySQL ‘ prometheus@localhost ‘. Você verá o usuário ‘ prometheus ‘ com privilégios de SELECT, PROCESS e BINLOG MONITOR como um cliente de replicação.
SHOW GRANTS FOR 'prometheus'@'localhost';Digite ‘ quit ‘ para sair do servidor MySQL/MariaDB.

Instalando prometheus-mysqld-exporter
O ‘ prometheus-mysqld-exporter ‘ é um exportador para métricas MySQL. Ele suporta MySQL >= 5.6 e MariaDB >= 10.3. Para usar o ‘prometheus-mysqld-exporter’, você precisa instalá-lo em seu servidor MySQL.
Neste exemplo, o servidor MySQL está rodando no servidor Debian 12. E por padrão, o ‘prometheus-mysqld-exporter’ está disponível no repositório oficial do Debian, então o instalaremos através do APT. Se você estiver usando outra distribuição, pode baixá-lo e instalá-lo manualmente do GitHub.
Primeiro, execute o comando abaixo para atualizar seu índice de pacotes Debian.
sudo apt update
Uma vez que o repositório esteja atualizado, instale o pacote ‘ prometheus-mysqld-exporter ‘ com o seguinte comando. Digite ‘ Y ‘ para confirmar a instalação.
sudo apt install prometheus-mysqld-exporter
Após a instalação ser concluída, execute o comando ‘ systemctl ‘ abaixo para recarregar o gerenciador systemd.
sudo systemctl daemon-reloadEntão, você pode iniciar e habilitar o serviço ‘ prometheus-mysqld-exporter ‘ com o comando abaixo. Com isso, o serviço ‘prometheus-mysqld-exporter’ deve estar em execução e habilitado em seu sistema.
sudo systemctl enable --now prometheus-mysqld-exporterAdicionando usuário MySQL ao prometheus-mysqld-exporter
Agora que você criou um usuário MySQL e instalou o ‘prometheus-mysqld-exporter’. O próximo passo é adicionar seu MySQL à configuração do ‘prometheus-mysqld-exporter’. Fazer isso permite gerar métricas do seu servidor MySQL e expor o endpoint na porta padrão ‘9104’.
Abra o arquivo ‘ /etc/default/prometheus-mysqld-exporter ‘ com o seguinte editor ‘ nano ‘.
sudo nano /etc/default/prometheus-mysqld-exporterDescomente a variável de ambiente ‘ DATA_SOURCE_NAME ‘ para integrar o MySQL com o ‘ prometheus-mysqld-exporter ‘. Neste exemplo, o usuário MySQL ‘ prometheus ‘ será usado para monitorar o servidor MySQL através do arquivo ‘ mysqld.sock ‘.
DATA_SOURCE_NAME="prometheus@unix(/run/mysqld/mysqld.sock)/"Salve o arquivo e saia do editor.
Agora execute o comando ‘ systemctl ‘ abaixo para reiniciar o serviço ‘ prometheus-mysqld-exporter ‘ e aplicar suas alterações. E então, verifique seu status para garantir que está em execução.
sudo systemctl restart prometheus-mysqld-exporter
sudo systemctl status prometheus-mysqld-exporterVocê pode ver abaixo que o ‘prometheus-mysqld-exporter’ está em execução.

Por fim, abra seu navegador da web e visite http://192.168.10.41:9104/. Este é o endpoint padrão para o ‘ prometheus-mysqld-exporter ‘. Se sua configuração for bem-sucedida, uma métrica será gerada e será exibida como a seguinte:

Adicionando endpoint prometheus-mysqld-exporter ao Prometheus
Agora que a configuração do ‘ prometheus-mysqld-exporter ‘ está completa e a métrica foi gerada. Agora você precisa adicionar o ‘ prometheus-mysqld-exporter ‘ como um endpoint ao seu servidor Prometheus. Para este guia, o endpoint ‘ prometheus-mysqld-exporter ‘ está disponível em ‘ 192.168.10.41:9104 ‘.
Se você não tiver um servidor Prometheus, instale-o através de Como Instalar Prometheus e Node Exporter no Debian 12.
Vá para o seu servidor Prometheus e abra o arquivo de configuração ‘ /etc/prometheus/prometheus.yml ‘ com o editor ‘nano’.
sudo nano /etc/prometheus/prometheus.ymlDentro do ‘ scrape_configs ‘, adicione o endpoint do seu ‘ prometheus-mysqld-exporter ‘ assim. Para este exemplo, o ‘ prometheus-mysqld-exporter ‘ está rodando no ‘ server1 ‘ com o endereço IP e porta ‘ 192.168.10.41:9104 ‘.
scrape_configs:
- job_name: server1
static_configs:
- targets: ['192.168.10.41:9104']
labels:
alias: db1Salve o arquivo e saia do editor quando terminar.
Agora execute o seguinte comando ‘ systemctl ‘ para reiniciar o serviço ‘ prometheus ‘ e aplicar suas alterações.
sudo systemctl restart prometheusPor fim, abra o painel do seu servidor Prometheus e selecione o menu ‘ Status > Targets ‘. Certifique-se de que você pode ver o ‘ server1 ‘, que é o endpoint do seu monitoramento MySQL.
Configurando o Painel Grafana para o servidor MySQL
Após adicionar o endpoint ‘prometheus-mysqld-exporter’ ao servidor Prometheus, você está agora pronto para construir o painel Grafana para monitoramento do servidor MySQL. Nesta seção, você importará o monitoramento do painel para MySQL via GrafanaLabs.
Se você não tiver o Grafana instalado, instale-o com Como Instalar Grafana e Prometheus no Ubuntu 24.04.
No seu painel Grafana, clique no menu ‘ Dashboard > New > Import ‘. Para este exemplo, usaremos modelos Grafana do GrafanaLabs para monitorar o servidor MySQL.
Copie o número de ID do Grafana e cole, em seguida, clique em ‘ Load ‘ para confirmar.

Agora selecione ‘ Prometheus ‘ como sua fonte de dados e clique em ‘ Import ‘.

Se bem-sucedido, você verá o painel para seu monitoramento MySQL/MariaDB com Prometheus e Grafana.

Conclusão
Parabéns! Você completou o monitoramento do servidor MySQL/MariaDB com Prometheus e Grafana. Você monitorou o servidor MySQL com o ‘prometheus-mysqld-exporter’ e gerou métricas para MySQL. Você também adicionou o ‘prometheus-mysqld-exporter’ como um endpoint ao seu servidor Prometheus. Por fim, você criou um painel Grafana para monitorar seu servidor MySQL.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.