1.安装mysqld_exporter
wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.darwin-amd64.tar.gz
2.解压并重命名
tar -zxvf mysqld_exporter-0.12.1.linux-amd64.tar.gz
重命名
mv mysqld_exporter-0.12.1.linux-amd64 mysqld_exporter
3.创建mysqld_exporter用户并授权
CREATE USER 'my'@'%' IDENTIFIED BY '123456' WITH MAX_USER_CONNECTIONS 3;
GRANT ALL PRIVILEGES ON *.* TO 'my'@'%' IDENTIFIED BY '123456';
flush privileges;
注意:
在创建用户的时候,推荐执行 MAX_USER_CONNECTIONS
参数,避免我们监控使用过多的数据库连接数,导致数据库压力过大。
4.创建 my.cnf 配置文件
在和mysqld_exporter
文件同级的文件夹中创建my.cnf
文件,文件内容如下
vi my.cnf
[client]
user=mysqld_exporter
password=mysqldExporter13579
注意了:在这里碰到了一个坑,在自己本地虚拟机中部署,获取到的mysql参数是非常多的。但在线上服务器却只能获取几个mysql参数,不符合预期。后来才发现,是因为数据库密码中包含了特殊字符“#”号所导致的。怎么排查了呢,那就是启动的时候,需要把日志打印出来查看一下,就明白了。
5.启动mysqld_exporter
创建Mysqld_exporter启动脚本
vim /usr/lib/systemd/system/mysqld_exporter.service
[Unit]
Description=mysqld_exporter
Documentation=https://prometheus.io
Wants=network-online.target
After=network.target
[Service]
Type=simple
User=root
ExecStart=/datadrive/software/mysqld_exporter/mysqld_exporter --config.my-cnf=/datadrive/software/mysqld_exporter/my.cnf
Restart=on-failure
[Install]
WantedBy=multi-user.target
启动命令:
systemctl daemon-reload
systemctl start mysqld_exporter
systemctl stop mysqld_exporter
systemctl status mysqld_exporter
6.浏览器访问本机IP:9104/metrics可以看到mysql的指标
curl localhost:9104/metrics
看到最后,画重点了,如果您需要(智慧餐厅)有关设备,或者身边有这样的资源,可以推荐给我,达成合作后,你懂的,致富链接: