当前位置: 首页 > article >正文

Linux安装mysql_exporter

mysqld_exporter 是一个用于监控 MySQL 数据库的 Prometheus exporter。可以从 MySQL 数据库的 metrics_schema 收集指标,相关指标主要包括:

  • MySQL 服务器指标:例如 uptime、version 等
  • 数据库指标:例如 schema_name、table_rows 等
  • 表指标:例如 table_name、engine、rows 等
  • 用户指标:例如 user、max_connections 等
  • InnoDB 指标:例如 innodb_buffer_pool_pages_dirty 等
  • 网络指标:例如 bytes_sent 等 

0、前提:

已安装MySQL

进入mysql安装路径 

cd /usr/local/mysql

1)查看是否启动

mysql.server status

没有的话先启动

# 启动MySQL服务
sudo mysql.server start

2)登录

mysql -u root -p

先查看是否以前已创建mysql_exporter用户

查看用户信息:

SELECT USER FROM mysql.USER;

如果已有的话,下一步骤3)则不需要

 3)创建exporter新用户  

创建新用户  

CREATE USER 'mysql_exporter'@'%' IDENTIFIED BY 'password';

赋予特定数据库的所有权限 

GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'mysql_exporter'@'%';

刷新权限使变更生效

FLUSH PRIVILEGES;

查看用户信息:

SELECT USER FROM mysql.USER;

quit;退出 

一、Linux 下载设置mysqld_exporter 

 1、下载

法一.官网下载 (推荐)

Download | Prometheus

上传到Linux系统

 法二、线上下载 

访问GitHub上的MySQL exporter项目页面(如:https://github.com/prometheus/mysqld_exporter/releases),找到适合您操作系统和架构的最新稳定版本的二进制文件。

例如,对于Linux amd64系统:

    wget https://github.com/prometheus/mysqld_exporter/releases/download/v<version>/mysqld_exporter-<version>.linux-amd64.tar.gz

    2.解压

    tar -xvf mysqld_exporter-0.17.2.linux-amd64.tar.gz

    3.移动位置(可选)

    如果有需要,将解压后的可执行文件移动到系统的合适路径,例如 /usr/local/bin

    sudo mv mysqld_exporter-0.17.2.linux-amd64 /usr/local/

    4.创建配置文件.cnf

    创建 

    touch mysql_exporter.cnf

    编辑配置文件,填写你的MySQL凭证

    vim mysql_exporter.cnf
    [client]
    user=mysql_exporter
    password=123456
    port=3306

    5.运行mysqld_exporter

    法一:直接运行(推荐--已验证) 


    如果不在路径下,先进入下载路径: 

    cd /usr/local/mysqld_exporter-0.17.2.linux-amd64
    ./mysqld_exporter --web.listen-address=:9104 --config.my-cnf=/usr/local/mysqld_exporter-0.17.2.linux-amd64/mysql_exporter.cnf &
    
    ss -lnpt|grep 9104

    法二:将mysqld_exporter做成服务(没有验证成功)

    vim /usr/lib/systemd/system/mysqld_exporter.service
    [Unit]
    Description=mysqld_exporter
    After=network.target[Service]
    ExecStart=/usr/local/mysqld_exporter-0.17.2.linux-amd64/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter-0.17.2.linux-amd64/.mysql_exporter.cnf[Install]
    WantedBy=multi-user.target

     设置开机启动 

    systemctl enable mysqld_exporter

    重载配置

    systemctl daemon-reload

    启动 

    systemctl start mysqld_exporter

    查看端口 

    ss -lnpt|grep 9104

    重启

    systemctl restart mysqld_exporter

    法三:运行 (没有验证)

     运行MySQL exporter
    可以直接运行mysqld_exporter,通过命令行参数提供数据库连接信息:

    nohup ./mysqld_exporter \--collect.info_schema.processlist \--collect.global_status \--collect.global_variables \--collect.slave_status \--collect.engine_innodb_status \--mysql.user=exporter \--mysql.password=password \--web.listen-address=:9104 &

    这里的示例启用了多个收集器并指定了监听端口为9104,以及MySQL连接的用户名和密码

    二、设置Prometheus.yml 

    普罗米修斯Prometheus监控安装(mac)-CSDN博客

     在 mac的Prometheus.yml中添加mysqld_exporter的配置 

    • Prometheus.yml配置路径

    路径

    /usr/local/etc/prometheus.yml

    - job_name: "mysql"static_configs:- targets: ["mysql的ip地址:9104"]  

    mac端重新加载:

    prometheus --config.file=/usr/local/etc/prometheus.yml

    端口9104可以根据你的需求更改,只要它不与系统上其他服务的端口冲突。

    安装完成后,你可以通过访问http://localhost:9104/metrics来验证mysqld_exporter是否正常工作,它应该输出Prometheus格式的指标数据

     

    Prometheus验证配置 

    通过Prometheus查看配置是否成功: 

    http://localhost:9090/targets

     

    注意事项

    • 确保mysqld_exporter使用的MySQL连接参数与实际环境匹配。
    • 遵循最小权限原则,仅授予Exporter所需的最低权限。
    • 监控生产环境时,请考虑安全性因素,比如使用SSL加密连接等。

    相关文章:

    Linux安装mysql_exporter

    mysqld_exporter 是一个用于监控 MySQL 数据库的 Prometheus exporter。可以从 MySQL 数据库的 metrics_schema 收集指标&#xff0c;相关指标主要包括: MySQL 服务器指标:例如 uptime、version 等数据库指标:例如 schema_name、table_rows 等表指标:例如 table_name、engine、…...

    BeautifulSoup 库的使用——python爬虫

    文章目录 写在前面python 爬虫BeautifulSoup库是什么BeautifulSoup的安装解析器对比BeautifulSoup的使用BeautifulSoup 库中的4种类获取标签获取指定标签获取标签的的子标签获取标签的的父标签(上行遍历)获取标签的兄弟标签(平行遍历)获取注释根据条件查找标签根据CSS选择器查找…...

    HTTP的Header

    一、HTTP Header 是什么&#xff1f; HTTP Header 是 HTTP 协议中的头部信息部分&#xff0c;位于请求或响应的起始行之后&#xff0c;用来在客户端&#xff08;浏览器等&#xff09;与服务器之间传递元信息&#xff08;meta-data&#xff09;&#xff08;简单理解为传递信息的…...

    linux虚拟机网络问题处理

    yum install -y yum-utils \ > device-mapper-persistent-data \ > lvm2 --skip-broken 已加载插件&#xff1a;fastestmirror, langpacks Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release7&arch…...

    unet算法发展历程简介

    UNet是一种基于深度学习的图像分割架构&#xff0c;自2015年提出以来经历了多次改进和扩展&#xff0c;逐渐成为医学图像分割和其他精细分割任务的标杆。以下是UNet算法的主要发展历程和关键变体&#xff1a; 1. 原始UNet&#xff08;2015&#xff09; 论文: U-Net: Convoluti…...

    基于华为云 ModelArts 的在线服务应用开发(Requests 模块)

    基于华为云 ModelArts 的在线服务应用开发&#xff08;Requests 模块&#xff09; 一、本节目标 了解并掌握 Requests 模块的特点与用法学会通过 PythonRequests 访问华为云 ModelArts 在线推理服务熟悉 JSON 模块在 Python 中的数据序列化与反序列化掌握 Python 文件 I/O 的基…...

    【Rust】基本概念

    目录 第一个 Rust 程序&#xff1a;猜数字基本概念变量和可变性可变性常量变量隐藏 数据类型标量类型整型浮点型数值运算布尔型字符类型 复合类型元组数组 函数参数语句与表达式函数返回值 控制流使用 if 表达式控制条件if 表达式使用 else if 处理多重条件在 let 语句中使用 i…...

    AI-Sphere-Butler之如何使用Llama factory LoRA微调Qwen2-1.5B/3B专属管家大模型

    环境&#xff1a; AI-Sphere-Butler WSL2 英伟达4070ti 12G Win10 Ubuntu22.04 Qwen2.-1.5B/3B Llama factory llama.cpp 问题描述&#xff1a; AI-Sphere-Butler之如何使用Llama factory LoRA微调Qwen2-1.5B/3B管家大模型 解决方案&#xff1a; 一、准备数据集我这…...

    C++学习之游戏服务器开发十四QT登录器实现

    目录 1.界面搭建 2.登录客户端步骤分析 3.拼接登录请求实现 4.发送http请求 5.服务器登录请求处理 6.客户端处理服务器回复数据 7.注册页面启动 8.qt启动游戏程序 1.界面搭建 查询程序依赖的动态库 ldd 程序名 do 1 cdocker rm docker ps -aq 静态编译游戏服务程序&a…...

    协同推荐算法实现的智能商品推荐系统 - [基于springboot +vue]

    &#x1f6cd;️ 智能商品推荐系统 - 基于springboot vue &#x1f680; 项目亮点 欢迎来到未来的购物体验&#xff01;我们的智能商品推荐系统就像您的私人购物顾问&#xff0c;它能读懂您的心思&#xff0c;了解您的喜好&#xff0c;为您精心挑选最适合的商品。想象一下&am…...

    【LLM】Ollama:容器化并加载本地 GGUF 模型

    本教程将完整演示如何在支持多 GPU 的环境下&#xff0c;通过 Docker 实现 Ollama 的本地化部署&#xff0c;并深度整合本地 GGUF 模型。我们将构建一个具备生产可用性的容器化 LLM 服务&#xff0c;包含完整的存储映射、GPU 加速配置和模型管理方案。 前提与环境准备 操作系统…...

    实践项目开发-hbmV4V20250407-Taro项目构建优化

    Taro项目构建优化实践&#xff1a;大幅提升开发效率 项目背景 在开发基于ReactTaro的前端项目时&#xff0c;随着项目规模的增长&#xff0c;构建速度逐渐成为开发效率的瓶颈。通过一系列构建优化措施&#xff0c;成功将开发环境的构建速度提升了30%-50%&#xff0c;显著改善…...

    MySQL中根据binlog日志进行恢复

    MySQL中根据binlog日志进行恢复 排查 MySQL 的 binlog 日志问题及根据 binlog 日志进行恢复的方法一、引言二、排查 MySQL 的 binlog 日志问题&#xff08;一&#xff09;确认 binlog 是否开启&#xff08;二&#xff09;查找 binlog 文件位置和文件名模式&#xff08;三&#…...

    Jenkins的地位和作用

    所处位置 Jenkins 是一款开源的自动化服务器&#xff0c;广泛应用于软件开发和测试流程中&#xff0c;主要用于实现持续集成&#xff08;CI&#xff09;和持续部署&#xff08;CD&#xff09;。它在开发和测试中的位置和作用可以从以下几个方面来理解&#xff1a; 1. 在开发和测…...

    【集合】底层原理实现及各集合之间的区别

    文章目录 集合2.1 介绍一下集合2.2 集合遍历的方法2.3 线程安全的集合2.4 数组和集合的区别2.5 ArrayList和LinkedList的区别2.6 ArrayList底层原理2.7 LinkedList底层原理2.8 CopyOnWriteArrayList底层原理2.9 HashSet底层原理2.10 HashMap底层原理2.11 HashTable底层原理2.12…...

    软考高级-系统架构设计师 论文范文参考(二)

    文章目录 论企业应用集成论软件三层结构的设计论软件设计模式的应用论软件维护及软件可维护性论信息系统安全性设计论信息系统的安全性设计(二)论信息系统的架构设计论信息系统架构设计(二) 论企业应用集成 摘要: 2016年9月&#xff0c;我国某省移动通信有限公司决定启动VerisB…...

    srp batch

    参考网址&#xff1a; Unity MaterialPropertyBlock 正确用法&#xff08;解决无法合批等问题&#xff09;_unity_define_instanced_prop的变量无法srp合批-CSDN博客 URP | 基础CG和HLSL区别 - 哔哩哔哩 (bilibili.com) 【直播回放】Unity 批处理/GPU Instancing/SRP Batche…...

    【Linux运维涉及的基础命令与排查方法大全】

    文章目录 前言1、计算机网络常用端口2、Kali Linux中常用的命令3、Kali Linux工具的介绍4、Ubuntu没有网络连接解决方法5、获取路由6、数据库端口 前言 以下介绍计算机常见的端口已经对应的网络协议&#xff0c;Linux中常用命令&#xff0c;以及平时运维中使用的排查网络故障的…...

    【2025最新Java八股】redis中io多路复用怎么回事,和多线程的关系

    io多路复用 IO 多路复用和多线程是两种不同的技术&#xff0c;他们都是用于改善程序在处理多个任务或多个数据流时的效率和性能的。 但是他俩要解决的问题不一样&#xff01;IO多路复用主要是提升I/O操作的效率和利用率&#xff0c;所以适合 IO 密集型应用。多线程则是提升CP…...

    Webview+Python:用HTML打造跨平台桌面应用的创新方案

    目录 一、技术原理与优势分析 1.1 架构原理 1.2 核心优势 二、开发环境搭建 2.1 安装依赖 2.2 验证安装 三、核心功能开发 3.1 基础窗口管理 3.2 HTML↔Python通信 JavaScript调用Python Python调用JavaScript 四、高级功能实现 4.1 系统级集成 4.2 多窗口管理 五…...

    Nginx HTTP 414 与“大面积”式洪水攻击联合防御实战

    一、引言 在大规模分布式应用中&#xff0c;Nginx 常作为前端负载均衡和反向代理服务器。攻击者若结合超长 URI/头部攻击&#xff08;触发 HTTP 414&#xff09;与海量洪水攻击&#xff0c;可在网络层与应用层形成双重打击&#xff1a;一方面耗尽缓冲区和内存&#xff0c;另一…...

    Oracle高级语法篇-集合操作

    Oracle 集合操作详解 作为数据库领域的佼佼者&#xff0c;Oracle 提供了功能强大的集合操作符&#xff0c;它们能够合并多个查询的结果集&#xff0c;极大提升数据处理效率。接下来&#xff0c;本文将从基础知识点到实战案例&#xff0c;全方位剖析 Oracle 的集合操作。 一、…...

    克服储能领域的数据处理瓶颈及AI拓展

    对于储能研究人员来说&#xff0c;日常工作中经常围绕着一项核心但有时令人沮丧的任务&#xff1a;处理实验数据。从电池循环仪的嗡嗡声到包含电压和电流读数的大量电子表格&#xff0c;研究人员的大量时间都花在了提取有意义的见解上。长期以来&#xff0c;该领域一直受到对专…...

    包含物体obj与相机camera的 代数几何代码解释

    反余弦函数的值域在 [0, pi] 斜体样式 cam_pose self._cameras[hand_realsense].camera.get_model_matrix() # cam2world# 物体到相机的向量 obj_tcp_vec cam_pose[:3, 3] - self.obj_pose.p dist np.linalg.norm(obj_tcp_vec) # 物体位姿的旋转矩阵 obj_rot_mat self.ob…...

    excel解析图片pdf附件不怕

    背景 工作中肯定会有导入excel还附带图片附件的下面是我解析的excel&#xff0c;支持图片、pdf、压缩文件实现 依次去解析excel&#xff0c;看看也没有附件&#xff0c;返回的格式是Map&#xff0c;key是第几行&#xff0c;value是附件list附件格式都被解析成pdf格式Reader.jav…...

    【Spring】依赖注入的方式:构造方法、setter注入、字段注入

    在Spring框架中&#xff0c;除了构造器注入&#xff08;Constructor Injection&#xff09;和Setter注入&#xff08;Setter Injection&#xff09;&#xff0c;还有一种依赖注入方式&#xff1a;字段注入&#xff08;Field Injection&#xff09;。字段注入通过在Bean的字段上…...

    mybatis实现增删改查1

    文章目录 19.MyBatis查询单行数据MapperScan 结果映射配置核心文件Results自定义映射到实体的关系 多行数据查询-完整过程插入数据配置mybatis 控制台日志 更新数据删除数据小结通过id复用结果映射模板xml处理结果映射 19.MyBatis 数据库访问 MyBatis&#xff0c;MyBatis-Plus…...

    Git,本地上传项目到github

    一、Git的安装和下载 https://git-scm.com/ 进入官网&#xff0c;选择合适的版本下载 二、Github仓库创建 点击右上角New新建一个即可 三、本地项目上传 1、进入 要上传的项目目录&#xff0c;右键&#xff0c;选择Git Bash Here&#xff0c;进入终端Git 2、初始化临时仓库…...

    基于flask+vue框架的灯饰安装维修系统u49cf(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。

    系统程序文件列表 项目功能&#xff1a;用户,工单人员,服务项目,订单记录,服务记录,评价记录 开题报告内容 基于 FlaskVue 框架的灯饰安装维修系统开题报告 一、选题背景与意义 &#xff08;一&#xff09;选题背景 随着城市化进程的加速与居民生活品质的显著提升&#xf…...

    【算法】BFS-解决FloodFill问题

    目录 FloodFill问题 图像渲染 岛屿数量 岛屿的最大面积 被围绕的区域 FloodFill问题 FloodFill就是洪水灌溉的意思&#xff0c;假设有下面的一块田地&#xff0c;负数代表是凹地&#xff0c;正数代表是凸地&#xff0c;数字的大小表示凹或者凸的程度。现在下一场大雨&…...