Prometheus监控MySQL:
1.下载mysqld_exporter: root@dokcer:~# wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.14.0/mysqld_exporter-0.14.0.linux-amd64.tar.gz 2.解压mysqld_exporter: root@dokcer:~# tar -xzvf mysqld_exporter-0.14.0.linux-amd64.tar.gz -C /usr/local 3.创建链接文件: root@dokcer:~# ln -sv /usr/local/mysqld_exporter-0.14.0.linux-amd64/mysqld_exporter /usr/local/bin/mysql_exporter '/usr/local/bin/mysqld_exporter' -> '/usr/local/mysqld_exporter-0.14.0.linux-amd64/mysqld_exporter' 4.安装并启动mysql server root@dokcer:~# apt install mysql-server root@dokcer:~# sudo systemctl start mysql.service 5.添加用户和赋予权限信息: mysql> CREATE USER 'exporter'@'localhost' IDENTIFIED BY '123456' WITH MAX_USER_CONNECTIONS 3; Query OK, 0 rows affected (0.00 sec) mysql> GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'localhost'; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) 6.编辑mysqld_exporter配置文件 .my.cnf文件(默认文件在~/.my.cnf) root@dokcer:~# vim /usr/local/mysqld_exporter-0.14.0.linux-amd64/.my.cnf [client] user=exporter #mysql 用户 password=123456 #mysql密码 7.后台运行mysqld_exporter root@dokcer:~# nohup mysqld_exporter --config.my-cnf='/usr/local/mysqld_exporter-0.14.0.linux-amd64/.my.cnf' & 8.查看mysqld exporter端口状态 root@dokcer:~# lsof -i:9104 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME mysqld_ex 2456 root 3u IPv6 26780 0t0 TCP *:9104 (LISTEN) root@dokcer:~# netstat -tulp | grep 9104 tcp6 0 0 [::]:9104 [::]:* LISTEN 2456/mysqld_exporte root@dokcer:~# ss -natlp | grep 9104 LISTEN 0 128 *:9104 *:* users:(("mysqld_exporter",pid=2456,fd=3))
访问http://IP:9104/metrics:

Prometheus添加MySQL主机:
1.添加Prometheus配置文件,添加MySQL主机 root@dokcer:~# vim /usr/local/prometheus/prometheus.yml - job_name: "mysql" static_configs: - targets: ["192.168.0.50:9104"] 2.重启prometheus root@dokcer:~# pkill prometheus root@dokcer:~# nohup /usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml &
Grafana添加MySQL图形界面:
添加Prometheus数据源:

需要注意的是如果是Prometheus官方的exporter的话,不用另外添加mysql数据源,只要添加Prometheus数据源即可,只要添加地址为http://IP:9090就可以查到监控的所有主机的数据(
mysql
localhost
数据):试着查询一下
mysql_up
数据,mysql_server已经启动:
导入mysql监控模板:
模板链接:

导入模板之后模板会自动读取默认的Prometheus数据源,然后就可以显示mysql运行数据,某些面板要安装插件:

mysql展示数据:
