@Prometheus 监控-MySQL (Mysqld Exporter) - 教程

news/2025/10/6 19:01:01/文章来源:https://www.cnblogs.com/lxjshuju/p/19127824

**Prometheus 监控 MySQL **

1. 目标


2. 环境准备

2.1 所需组件
组件作用安装位置
Prometheus Server指标采集与存储监控服务器
mysqld_exporter暴露 MySQL 指标MySQL 服务器
Grafana数据可视化监控服务器
Alertmanager告警通知管理监控服务器
2.2 权限要求

3. 部署 mysqld_exporter

3.1 下载与安装
# 下载最新版 (替换版本号)
VERSION="0.15.1"
wget https://github.com/prometheus/mysqld_exporter/releases/download/v${VERSION}/mysqld_exporter-${VERSION}.linux-amd64.tar.gz
tar xvf mysqld_exporter-${VERSION}.linux-amd64.tar.gz
sudo mv mysqld_exporter-${VERSION}.linux-amd64/mysqld_exporter /usr/local/bin/
3.2 创建配置文件

创建 .my.cnf 文件存储数据库连接信息:

sudo tee /etc/.mysqld_exporter.cnf <<
EOF
[client]
user=exporter
password=YourStrongPassword
host=localhost
port=3306
EOF
sudo chmod 600 /etc/.mysqld_exporter.cnf # 限制权限
3.3 创建 Systemd 服务

/etc/systemd/system/mysqld_exporter.service

[Unit]
Description=MySQL Prometheus Exporter
After=network.target
[Service]
User=mysqld_exporter
ExecStart=/usr/local/bin/mysqld_exporter \
--config.my-cnf=/etc/.mysqld_exporter.cnf \
--collect.global_status \
--collect.info_schema.innodb_metrics \
--collect.slave_status \
--collect.info_schema.processlist
Restart=always
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl start mysqld_exporter
sudo systemctl enable mysqld_exporter
3.4 验证 Exporter

访问指标接口:
curl http://localhost:9104/metrics
应输出包含 mysql_ 前缀的指标。


4. 配置 Prometheus

4.1 添加 Job 到 prometheus.yml
scrape_configs:
- job_name: 'mysql'
static_configs:
- targets: ['mysql-server-ip:9104'] # Exporter 地址
relabel_configs:
- source_labels: [__address__]
target_label: instance
replacement: 'mysql-primary' # 实例标识
4.2 重载 Prometheus
curl -X POST http://localhost:9090/-/reload # 或重启服务

5. 核心监控指标说明

指标名称含义告警建议
mysql_global_status_threads_connected当前连接数> 80% max_connections
mysql_global_status_threads_running活跃连接数持续 > 100
mysql_global_status_slow_queries慢查询计数短时间内突增
mysql_global_variables_max_connections最大连接数规划容量参考
mysql_slave_status_slave_io_running主从 IO 线程状态≠ 1 (异常)
mysql_info_schema_innodb_row_lock_time_avg平均行锁等待时间> 500ms

6. 告警规则配置

6.1 创建告警规则文件

/etc/prometheus/rules/mysql_alerts.yml

groups:
- name: MySQL-Alerts
rules:
- alert: MySQLHighConnections
expr: mysql_global_status_threads_connected / mysql_global_variables_max_connections * 100 > 80
for: 5m
labels:
severity: warning
annotations:
summary: "MySQL 高连接数 ({{ $value }}%)"
description: "实例 {{ $labels.instance }} 连接数超过 80% 限制"
- alert: MySQLReplicationFailure
expr: mysql_slave_status_slave_io_running != 1 or mysql_slave_status_slave_sql_running != 1
for: 1m
labels:
severity: critical
annotations:
summary: "MySQL 复制中断 ({{ $labels.instance }})"
6.2 在 prometheus.yml 中加载规则
rule_files:
- "/etc/prometheus/rules/mysql_alerts.yml"

7. Grafana 仪表盘配置

  1. 导入官方 Dashboard:
    • ID 7362 (MySQL Overview)
  2. 配置 Prometheus 为数据源。

8. 维护与优化

8.1 定期检查
  • 验证 Exporter 状态:systemctl status mysqld_exporter
  • 检查指标收集延迟:prometheus_target_interval_length_seconds
  • 审核 MySQL 用户权限(每年至少一次)。
8.2 安全加固
8.3 性能调整
  • 限制采集的指标(减少负载):
    --no-collect.info_schema.tables # 禁用表统计
  • 调整 Prometheus 抓取间隔(默认 15s):
    scrape_interval: 30s # prometheus.yml

9. 故障排查

9.1 Exporter 无数据
9.2 Prometheus 未抓取
  • 访问 http://prom-server:9090/targets 检查 Target 状态。
  • 验证网络连通性:telnet mysql-server-ip 9104

10. 附录


按照此文档,可实现 MySQL 的全面监控与告警,确保数据库稳定性。部署后需通过压力测试验证监控有效性,并根据业务特点调整告警阈值。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/929615.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

月熊志网站wordpress当下载站

1-线性回归&#xff08;Linear Regression&#xff09; 场景&#xff1a;预测商品销售额 优点&#xff1a;简单易用&#xff0c;结果易于解释缺点&#xff1a;假设线性关系&#xff0c;容易受到异常值影响概念&#xff1a;建立自变量和因变量之间线性关系的模型。公式&#x…

详细介绍:基于开源AI大模型与AI智能名片的S2B2C商城小程序源码优化:企业成本管理与获客留存的新范式

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

服务型网站建设的主题搜索引擎优化通常要注意的问题有( )

目录 概念 区别 概念 宕机和脱机是两个不同的概念 宕机:一般指计算机系统或网络突然停止正常运行&#xff0c;无法继续提供服务。宕机可能是由硬件故障、软件问题、电源中断等原因导致的系统失效。 脱机:通常指设备与网络断开连接或无法直接访问在线资源。例如&#xff0c;…

定制家具如何选择江门网站seo关键词排名优化

很明显的状态压缩思想了。把全集分组&#xff0c;枚举每个集合的子集&#xff0c;看一个子集是否能覆盖所有的点&#xff0c;若能&#xff0c;则f[s]max(f[s],f[s^s0]1)。即与差集1比较。 这种枚举集合的思想还是第一次遇到&#xff0c;果然太弱了。。。。~~~~ 其中枚举集合 fo…

常见的网站推广方式有哪些网站建设百灵鸟

1、根据体系结构不同&#xff0c;服务器可以分成两大重要的类别&#xff1a;IA架构服务器和RISC架构服务器。   这种分类标准得主要依据是两种服务器采用得处理器体系结构不同。RISC架构服务器采用得CPU是所谓的精简指令集的处理器&#xff0c;精简指令集CPU的主要特点是采用…

详细介绍:第7章 :面向对象

详细介绍:第7章 :面向对象pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco",…

AI元人文:走向人机价值共生的文明新范式

AI元人文:走向人机价值共生的文明新范式 序言:超越“价值对齐”的必然之路 在人工智能发展的当前阶段,我们正面临一个根本性困境:如何让高度理性的AI系统理解并适应人类复杂、模糊且时常自相矛盾的价值体系?传统的…

实用指南:【机器学习基础】机器学习入门核心算法:层次聚类算法(AGNES算法和 DIANA算法)

实用指南:【机器学习基础】机器学习入门核心算法:层次聚类算法(AGNES算法和 DIANA算法)pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !import…

推荐黄石网站建设整合资源加强全市网站建设

【Sklearn】基于朴素贝叶斯算法的数据分类预测(Excel可直接替换数据) 1.模型原理2.模型参数3.文件结构4.Excel数据5.下载地址6.完整代码7.运行结果1.模型原理 模型原理: 朴素贝叶斯分类是基于贝叶斯定理的一种分类方法。它假设特征之间相互独立(朴素性),从而简化计算过…

html5搭建手机网站开发一个saas平台要多少钱

jeecg自定义datagrid查询 为什么要写这篇文章&#xff1f; 我们了解&#xff0c;使用 jeecg 提供的 CriteriaQuery 查询方式&#xff0c;确实能满足绝大数的需求&#xff0c;但是往往有那么个比较复杂的情况&#xff0c;需要我们直接去写 sql&#xff0c;比如多表查询呀等等等…

CSP-J 第二轮集训 :总结 + 专题细分精讲_from_黄老师

CSP-J 第二轮集训资料 总结 + 专题细分精讲。 为方便查阅,采用「总-分」结构:先用一张 思维导图级总表 让你 30 秒看清全局; 对专题资料做 “三维”剖析:知识脉络(思维导图) 典型题目(含算法/陷阱/复杂度) 可迁…

诚信宁津建设网站seo搜索优化网站推广排名

本系统是基于java前端架构Vue用java编程语言及javascript、CSS、HTML语言进行编写设计并实现相关功能的。 设计步骤及措施&#xff1a; &#xff08;1&#xff09;确定项目名称、项目研究内容&#xff0c;开题报告提交及修改。 &#xff08;2&#xff09;项目开发准备&#xff…

[Python] struct.unpack() 用法详解 - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

软件工程第一次随笔 - Nicholas

软件工程第一次作业 基本信息项目 内容这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/202501SoftwareEngineerin这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/202501SoftwareEngineering/homew…

终于知道酷睿Ultra X什么意思了!满血12核心核显

终于知道酷睿Ultra X什么意思了!满血12核心核显Posted on 2025-10-06 18:40 lzhdim 阅读(0) 评论(0) 收藏 举报根据最新说法,酷睿Ultra X系列其实代表12个Xe3架构核心的满血核显,而且只有酷睿Ultra X9、酷睿Ul…

上海明鹏建设集团有限公司网站中国建设很行河北省分行合作网站

文章目录 序言1. 样本不均衡2. 样本不均衡的影响以及样本均衡的意义3. 什么时候需要进行样本均衡/数据均衡4. 数据不均衡的解决办法 序言 数据集制作过程中需要关注样本均衡问题&#xff0c;学习笔记&#xff0c;简单记录 1. 样本不均衡 分类任务中不同类别样本数差别很大的…

南阳专业网站设计公司公司网站的后台

XSS(Cross Site Scripting,跨站脚本漏洞)漏洞&#xff0c;又叫 CSS 漏洞&#xff0c;是最常见的 Web 应用程序漏洞。其主要原理是当动态页面中插入的内容含有特殊字符(如<)时&#xff0c;用户浏览器会将其误认为是插入了HTML 标签&#xff0c;当这些HTML标签引入了一段 Java…

网站有收录没权重开发平台app

在Stable Diffusion ComfyUI中&#xff0c;有一种高级技巧可以让用户通过细致的区域化提示词来控制图像的不同部分&#xff0c;从而实现多图连接的效果。这种方法允许艺术家在同一画布上展现多个场景&#xff0c;创造出富有层次和故事性的图像。以下是实现这一效果的详细步骤。…

大连网站优化技术西宁电商网站建设

#include<stdio.h> #include<stdlib.h> int main() {int *p;pmalloc(8);*p1;*p2;p--;printf("%d %d\n",*p,*p);return 0; }

做网站东莞做网站要学

目录 命名空间(Namespace)命令计算资源配额创建命名空间绑定一个ResourceQuota资源将命名空间和资源限制对象进行绑定尝试创建第二个 Pod查看ResourceQuota 绑定第二个ResourceQuota为命名空间配置默认的 CPU 、memory请求和限制&#xff08;1&#xff09;Pod 中所有容器都没有…