暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Prometheus快速监控MySQL数据库,超简单!

94

今天分享一下Prometheus如何监控MySQL数据库

实验环境:

  • 数据库服务器:10.0.0.41

  • prometheus服务器:10.0.0.104

参考部署链接:

默认数据库和prometheus都已部署好!下面演示安装mysql_exporter过程

1 安装mysqld_exporter

在MySQL数据库服务器上安装mysql_exporter

1.1 创建 MySQL 只读监控用户

在 MySQL 中运行以下命令(换成你自己的密码):

CREATE USER 'exporter'@'%' IDENTIFIED BY '123456';
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'%';
FLUSH PRIVILEGES;

验证登录

mysql -uexporter -p123456

1.2 安装 mysqld_exporter

下载并安装

cd /opt
wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.17.2/mysqld_exporter-0.17.2.linux-amd64.tar.gz
tar -xvf mysqld_exporter-0.17.2.linux-amd64.tar.gz
cp mysqld_exporter-0.17.2.linux-amd64/mysqld_exporter usr/local/bin/
chmod +x usr/local/bin/mysqld_exporter


1.3 创建配置文件

在 /etc
 下创建 .mysqld_exporter.cnf
 登录配置:

vi  /etc/.mysqld_exporter.cnf

内容如下:

[client]
user=exporter
password=123456

1.4 配置 systemd 服务

创建服务文件:

vi  /etc/systemd/system/mysqld_exporter.service

内容如下:

[Unit]
Description=Prometheus MySQL Exporter
After=network.target

[Service]
Type=simple
ExecStart=/usr/local/bin/mysqld_exporter--config.my-cnf=/etc/.mysqld_exporter.cnf
Restart=on-failure

[Install]
WantedBy=multi-user.target

然后启动服务:

# 重载系统服务
systemctl daemon-reload

# 启动并设置开机自启动
systemctl enable --now mysqld_exporter

查看状态:

systemctl status mysqld_exporter


1.5 防火墙放行(可选)

确保 Prometheus 节点(10.0.0.104)能访问此节点的 9104
 端口:

# 关闭防火墙
systemctl disable --now firewalld

# 或者开通9104端口
firewall-cmd --permanent --add-port=9104/tcp
firewall-cmd --reload


2 Prometheus 配置

编辑你的 prometheus.yml

vi data/prometheus/prometheus.yml

global:
  scrape_interval: 15s

scrape_configs:
  - job_name: 'mysql-exporter'
    static_configs:
      - targets: ['10.0.0.41:9104']
        labels:
          mysql: 10.0.0.41数据库

保存并重启 Prometheus:

systemctl restart prometheus

访问 Prometheus 界面:

http://10.0.0.104:9090

进入 Status > Targets
,确认 10.0.0.41:9104
 状态为 UP

3 测试指标是否可用

在浏览器或命令行访问:

http://10.0.0.41:9104/metrics

你应该能看到:

说明 exporter 成功运行并能读取数据库状态!

4 使用Grafana可视化展示

导入 MySQL 监控 Dashboard(推荐模板 ID:7362 或 14057)

本次分享结束,感谢点赞和关注!

往期精彩文章:


K8S命令详解汇总【自用珍藏版】K8S集群部署 | K8S存储实战案例 |
K8S证书续签十年 | K8S部署Prometheus | Rancher部署并接管K8S |
Jenkins安装部署 | Gitlab安装部署 | 服务网格Istio安装及实战 |
搭建企业级Harbor仓库 | K8S对接Harbor仓库 | Docker常用命令汇总 |
Docker无法下载镜像解决办法 | 安装Docker的三种方法 | Docker基础概念汇总 |

Oralce19C RAC集群搭建 | Oracle集群管理命令汇总 | MySQL集群安装部署 |
MySQL一键备份脚本 | MySQL集群目录迁移 | Redis三主三从集群部署 |

150个Linux常用命令 |  8个有趣的Linux命令 | Vim编辑器的常用操作汇总  |
Firewalld防火墙详细讲解 |  构建内部Yum源 | 超全的磁盘扩容方法 | 服务器带外管理知识 |

文章转载自运维李哥不背锅,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论