使用Prometheus监控MySQL

2021-07-27  本文已影响0人  Anson_1f2a

MySQL授权

mysql -uroot -p

mysql> CREATE USER 'exporter'@'localhost' IDENTIFIED mysql> BY 'XXXXXXXX' WITH MAX_USER_CONNECTIONS 3;
mysql> GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'localhost';
mysql> FLUSH PRIVILEGES;

使用exporter

  1. 根据相应的系统下载相应压缩包
    下载地址:https://prometheus.io/download/
    image.png
  2. 解压缩包
tar xvfz mysqld_exporter-0.13.0.linux-amd64.tar.gz
  1. 新建.my.cnf
    用于配置exporter连接MySQL
[client]
user=exporter
password=xxxxxxxxxx
  1. 启动
nohup ./mysqld_exporter --config.my-cnf=/home/mysqld_exporter-0.13.0.linux-amd64/.my.cnf &
  1. 检查是否启动成功
    MySQL exporter默认的端口是9104
netstat -tnlp | grep 9104
image.png
  1. 修改prometheus.yml配置文件
    加入一下配置
  - job_name: 'mysql'
    static_configs:
    - targets: ['127.0.0.1:9104']
  1. 启动Prometheus
    我修改了启动的端口
./prometheus --config.file="prometheus.yml" --web.listen-address=:9091 &
  1. 打开http://127.0.0.1:9091/targets能看到已经添加成功
    image.png
    在graph里面可以查到MySQL相关数据
    image.png
    ps. 密码中不能带问号,启动exporter会出现如下错误
    level=error ts=2021-07-27T10:25:18.522Z caller=exporter.go:149 msg="Error pinging mysqld" err="Error 1049: Unknown database '&lock_wait_timeout=2'"
上一篇 下一篇

猜你喜欢

热点阅读