1、安装mysql_exporter 监控mysql需要用到的Prometheus的mysql_exporter模块,可以去官网下载,上传到被监控的mysql服务器:
[root@nginx soft]# ls
mysqld_exporter-0.12.1.linux-amd64.tar.gz
[root@nginx soft]# tar -zxvf mysqld_exporter-0.12.1.linux-amd64.tar.gz
[root@nginx soft]# mv mysqld_exporter-0.12.1.linux-amd64 /usr/local/mysql_exporter
[root@nginx soft]#
2、创建mysql授权账户
mysql> CREATE USER 'exporter'@'localhost' IDENTIFIED BY '123456';
mysql> GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'localhost';
3、创建授权用户配置文件
[root@nginx mysql_exporter]# pwd
/usr/local/mysql_exporter
[root@nginx mysql_exporter]# ls
my.cnf mysqld_exporter
[root@nginx mysql_exporter]# cat my.cnf
[client]
user=exporter
password=123456
[root@nginx mysql_exporter]#
这个配置文件里的用户就是第二步中创建的mysql授权访问用户。
4、启动mysql_exporter
[root@nginx mysql_exporter]# pwd
/usr/local/mysql_exporter
[root@nginx mysql_exporter]# ls
my.cnf mysqld_exporter
[root@nginx mysql_exporter]# ./mysqld_exporter --config.my-cnf=.my.cnf &
[root@nginx mysql_exporter]# ps -ef| grep mysqld_ex
root 16849 11849 0 15:53 pts/0 00:00:01 ./mysqld_exporter --config.my-cnf=./my.cnf
root 18491 11849 0 16:18 pts/0 00:00:00 grep --color=auto mysqld_ex
[root@nginx mysql_exporter]# netstat -tunlap| grep mysqld_ex
tcp6 0 0 :::9104 :::* LISTEN 16849/./mysqld_expo
[root@nginx mysql_exporter]#
看好路径,别把路径搞错了,服务启动之后下面可以使用浏览器打开服务器的9104端口查看数据了:
5、添加Prometheus监控项 修改prometheus.yml文件,添加如下监控项:
-job_name: 'mysql'
static_configs:
- targets: ['192.168.6.99:9104']
添加完后热加载一下Prometheus就可以通过web界面查看了
6、通过grafana展示 这里介绍一个mysql的面板id:7362,导入后打开是这个样子的
其他好用的面板有空的朋友去官网慢慢找吧,也可以根据自己需求对这个进行改造。