Prometheus + Grafana 监控系统搭建使用指南-mysqld_exporter 安装与配置

news2025/1/16 0:48:24

使用mysqld_exporter 实现Prometheus 监控Mysql

系列文章目录

  1. Prometheus 的安装部署
  2. Grafana的安装部署
  3. Linux服务器接入Prometheus监控-Node Exporter 安装指南
  4. Prometheus 接入SpringBoot微服务监控
  5. Mysql 接入 Prometheus
  6. RocketMQ 接入Prometheus 监控
  7. ElasticSearch 接入 Prometheus
  8. Nacos 接入 Prometheus 监控
  9. Redis 接入 Prometheus 监控系统
  10. Prometheus + Grafana 监控系统-告警规则配置
  11. Prometheus + Grafana 监控系统-PrometheusAlert安装与配置指南

在这里插入图片描述

  1. 下载地址: https://prometheus.io/download/#mysqld_exporter
wget https://github.com/prometheus/mysqld_exporter/releases/download/vX.Y.Z/mysqld_exporter-X.Y.Z.linux-amd64.tar.gz
# 示例: 
wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.15.1/mysqld_exporter-0.15.1.linux-amd64.tar.gz	

# 解压安装
tar -xzvf mysqld_exporter-*.linux-amd64.tar.gz

  • mysqld_exporter-0.15.1.linux-amd64.tar.gz 支持的 MySQL 版本: MySQL >= 5.6, 除了 MySQL,mysqld_exporter 也支持 MariaDB,版本 >= 10.3。

  • 将解压后的二进制文件移动到系统路径下(可选):

    sudo mv mysqld_exporter-X.Y.Z.linux-amd64/mysqld_exporter /usr/local/bin/mysqld_exporter
    
  1. 配置 mysqld_exporter

    • 在 MySQL 服务器上创建一个用于 mysqld_exporter 的用户,并赋予相应的权限。
    CREATE USER 'mysqld_exporter'@'localhost' IDENTIFIED BY 'your_password';  
    GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'mysqld_exporter'@'localhost';  
    FLUSH PRIVILEGES;
    
    • 创建一个配置文件(如 my.cnf),包含 MySQL 服务器的连接信息:

      [client]  
      user=mysqld_exporter  
      password=your_password  
      host=localhost  
      port=3306
      # 可选
      # socket=/var/lib/mysql/mysql.sock
      
      • Tips: 也支持配置抓去多个 mysql 实例
    • 此时就可以启动了: nohup mysqld_exporter --config.my-cnf=.my.cnf &

      • mysqld_exporter 默认监听在 9104 端口上。
    • 注意: 也可以注册成一个服务

      vim /etc/systemd/system/mysqld_exporter.service
      # 内容如下
      
      [Unit]  
      Description=MySQLd Exporter  
      After=network.target  
        
      [Service]  
      User=your_username  # 替换为你的用户名或运行mysqld_exporter的用户  
      Group=your_group    # 替换为你的组名或运行mysqld_exporter的组  
      ExecStart=/usr/local/bin/mysqld_exporter --config.my-cnf=/path/to/your/.my.cnf  
      Restart=always  
        
      [Install]  
      WantedBy=multi-user.target
      
      • 启动与管理设置自启动
      sudo systemctl start mysqld_exporter
      sudo systemctl enable mysqld_exporter  
      sudo systemctl status mysqld_exporter
      
      • Tips: 更多可选与建议设置
      [Service]
      ExecStart=/data/mysqld_exporter/mysqld_exporter --config.my-cnf /data/mysqld_exporter/.my.cnf --web.listen-address=0.0.0.0:9104 \
        --collect.info_schema.innodb_cmp \
        --collect.info_schema.innodb_cmpmem \
        --collect.info_schema.query_response_time \
        --collect.perf_schema.tableiowaits \
        --collect.perf_schema.indexiowaits \
        --collect.perf_schema.tablelocks \
        --collect.perf_schema.eventsstatements \
        --collect.perf_schema.eventswaits \
        --collect.perf_schema.file_events \
        --collect.perf_schema.file_instances \
        --collect.binlog_size \
        --collect.info_schema.tables \
        --collect.info_schema.tablestats \
        --collect.info_schema.userstats \
        --collect.auto_increment.columns
      
    • 注意:

      • 防火墙设置,如果服务器上有防火墙,确保它允许对mysqld_exporter监听的端口(默认为9104)的访问。
      • 在生产环境中,建议使用非root用户运行mysqld_exporter,以提高安全性。
      • 如果发现用户名与密码都配置正确,但是报错: mysqld_exporter: ts=2024-07-01T06:41:17.912Z caller=exporter.go:152 level=error msg=“Error pinging mysqld” err=“dial tcp [::1]:3309: connect: connection refused”
        • 解决方案: 增加 mysqld_exporter 的 socket 配置。 例如: socket=/var/lib/mysql/mysql.sock
  2. 集成 mysqld_exporter 与 Prometheus

    • prometheus.yml

      scrape_configs:  
        - job_name: 'mysql'  
          static_configs:  
          - targets: ['abc.mysql.com':9104']
      
    • 让配置生效

      - sudo kill -HUP $(pidof prometheus)
      
  3. Grafana 添加 Mysql 相关的仪表盘

    • 官方汉化版: https://grafana.com/grafana/dashboards/17320-1-mysqld-exporter-dashboard/
      在这里插入图片描述

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

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

相关文章

Renderless 思想正在影响前端开发

本文由前端小伙伴方长_beezen 原创。欢迎大家踊跃投稿。 原文链接:https://juejin.cn/post/7385752495535472655 前言 截止到 2024 年,跨端应用开发所需要考虑的兼容性,已经涵盖了框架、平台和设备类型等多个方面,例如&#xff1…

AI学习与实践6_AI解场景Agent应用预研demo

前言 学习大模型Agent相关知识,使用llama_index实现python版的Agent demo,根据AI解题场景知识密集型任务特点,需要实现一个偏RAG的Agent WorkFlow,辅助AI解题。 使用Java结合Langchain4j支持的RAG流程一些优化点以及自定义图结构…

基于工业互联网的智能制造:未来制造业的新引擎

随着科技的飞速发展,工业互联网通过提供强大的数据支撑和通信基础,成为智能制造的重要基石。智能制造的引入,不仅显著提升了制造业的生产效率、降低了成本,而且提高了产品质量,满足了市场的多样化、个性化需求。 智能制…

创建react的脚手架

Create React App 中文文档 (bootcss.com) 网址:creat-react-app.bootcss.com 主流的脚手架:creat-react-app 创建脚手架的方法: 方法一(JS默认): 1. npx create-react-app my-app 2. cd my-app 3. …

(三十一)Flask之wtforms库【剖析源码下篇】

每篇前言: 🏆🏆作者介绍:【孤寒者】—CSDN全栈领域优质创作者、HDZ核心组成员、华为云享专家Python全栈领域博主、CSDN原力计划作者 🔥🔥本文已收录于Flask框架从入门到实战专栏:《Flask框架从入…

ESP32CAM物联网教学08

ESP32CAM物联网教学08 本地网页控制小车 小智制作的物联网小车,在与云台监控摄像头的PK中,一路攻城掠地、勇往直前。突然有一天,他觉得似乎忘了最开始时的初衷,忘了一路走来的首发站:这个不就是一辆遥控车吗?我能不能就做一辆快乐的、纯粹的遥控车。 CameraWebServer转换…

相关款式1111

一、花梨木迎客松 1. 风速打单 发现只有在兄弟店铺有售卖 六月份成交订单数有62笔 2. 生意参谋 兄弟店铺商品访客数:3548,支付件数:95件 二. 竹节茶刷(引流) 1. 风速打单 六月订单数有165笔 兄弟:…

【技术支持】console控制台输出美化(腾讯文档)

function style(color, size 12){return display:inline-block;background-color:${color};color:#fff;padding:2px 4px;font-size:${size}px; } const dataVersion 3.0.0 const codeVersion 3.0.28657969 const branchVersion release-20240617-f98487dc //注意此处%c后面…

CDC实时同步进行时遇到不可抗力中断了怎么办?

目录 一、CDC技术的概念 二、CDC技术的应用场景 1.数据复制和同步 2.实时数据仓库 3.业务过程监控和审计 4.ETL 进程优化 三、CDC与数据管道的关系 1.区别 CDC(Change Data Capture) 数据管道(Data Pipeline) 2.联系 CDC是数据管道…

【pycharm】 Virtualenv创建venv报错

一、背景 在启动django项目时,需要创建venv环境,有时候能顺利创建成功,当python版本换成3.8时,会报错 ImportError: DLL load failed while importing _ssl: 找不到指定的模块。 二、原因和解决措施 之所以执行这个报错&#…

六西格玛绿带培训如何告别“走过场”?落地生根

近年来,六西格玛绿带培训已经成为了众多企业提升管理水平和员工技能的重要途径。然而,不少企业在实施六西格玛绿带培训时,往往陷入形式主义的泥潭,导致培训效果大打折扣。那么,如何避免六西格玛绿带培训变成“走过场”…

前端面试项目细节重难点(十)(已工作|做分享)

面试官:现场出需求:我想让一个左侧盒子可以进行拉伸、缩小、展示或隐藏这些功能,你会如何实现? 答:(1)分析问题:其实,我听到这个问题后: 我的第一种想法&am…

化学合成水热釜 加热反应釜 实验室高温高压设备

水热釜,也称为高压消解罐或高压釜,是一种能够在高温高压条件下进行化学反应的实验室设备。它广泛应用于化学、地质、材料科学、环境科学等领域,特别是在需要在高压环境下加速化学反应或溶解难溶物质的实验中。以下是水热釜的一些关键特性和用…

Android14之获取包名/类名/服务名(二百二十三)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…

短链接学习day2

用户敏感信息脱敏展示: RequestParam 和 PathVariable的区别 注解是用于从request中接收请求的,两个都可以接收参数,关键点不同的是RequestParam 是从request里面拿取值,而 PathVariable 是从一个URI模板里面来填充。 PathVari…

3033. 修改矩阵 Easy

给你一个下标从 0 开始、大小为 m x n 的整数矩阵 matrix ,新建一个下标从 0 开始、名为 answer 的矩阵。使 answer 与 matrix 相等,接着将其中每个值为 -1 的元素替换为所在列的 最大 元素。 返回矩阵 answer 。 示例 1: 输入:…

达梦数据库小技巧

达梦数据库小技巧 一: 时间类型TIMESTAMP使用1.1 建表1.2 插入1.3按时间戳查询,返回某一列不重复的值 二:存储过程创建和调用2.1建表2.2 创建存储过程,循环100插入拼接字符串2.3调用存储过程 一: 时间类型TIMESTAMP使用…

Word取消自动编号

设置Word更正选项 1、 点击文件——word选项——校对——自动更正选项 2、点击自动更正——键入时自动套用格式——取消”自动编号”前面的勾选——点击确定即可

第十四届蓝桥杯省赛C++B组F题【岛屿个数】题解(AC)

题目大意 给定一个 01 地图,分别表示陆地和海,问地图中一共有多少块岛屿?另外,若一个岛屿在另一个岛屿的内部,则不统计。如下图中的大岛屿包含着内部的小岛屿,故内部小岛屿不计算,最终输出 1。…