当前位置:首页 > PS视频 > 正文内容

还在手动配 mysql_exporter?

编辑4个月前 (04-27)PS视频69

别再手动一步步敲了,太容易错、效率还低。下面给你一套**一键部署 + 多实例管理 + 自动发现**的成熟方案,直接能用。 --- ## 一、手动配有多痛苦(你肯定遇到过) - 每台机器:下载 → 写 `.my.cnf` → 写 systemd → 改 Prometheus → 重启 → 验证,**30 分钟/台** - 密码一改,所有机器都要改,**改错一个就崩** - 多实例要开多个端口、多个配置,**管理混乱** - 权限、`performance_schema`、collector 开关,**漏一个就没指标** --- ## 二、最佳实践:用脚本一键部署(1 分钟/台) ### 1)一键脚本(可直接用) ```bash #!/bin/bash set -euo pipefail VERSION="0.16.0" LISTEN_ADDR="0.0.0.0:9104" MYSQL_HOST="$1" MYSQL_USER="$2" MYSQL_PASS="$3" if [ $# -ne 3 ]; then  echo "用法: $0 <mysql-host> <user> <pass>"  exit 1 fi # 1. 安装二进制 wget https://github.com/prometheus/mysqld_exporter/releases/download/v${VERSION}/mysqld_exporter-${VERSION}.linux-amd64.tar.gz tar zxf mysqld_exporter-${VERSION}.linux-amd64.tar.gz cp mysqld_exporter-${VERSION}.linux-amd64/mysqld_exporter /usr/local/bin/ rm -rf mysqld_exporter-* # 2. 配置 .my.cnf mkdir -p /etc/mysqld_exporter cat > /etc/mysqld_exporter/.my.cnf <<EOF [client] user=${MYSQL_USER} password=${MYSQL_PASS} host=${MYSQL_HOST} port=3306 EOF chmod 600 /etc/mysqld_exporter/.my.cnf # 3. systemd 服务 cat > /etc/systemd/system/mysqld_exporter.service <<EOF [Unit] Description=MySQL Exporter After=network.target [Service] ExecStart=/usr/local/bin/mysqld_exporter \  --config.my-cnf=/etc/mysqld_exporter/.my.cnf \  --web.listen-address=${LISTEN_ADDR} \  --collect.global_status \  --collect.info_schema.innodb_metrics \  --collect.slave_status \  --collect.info_schema.processlist Restart=always [Install] WantedBy=multi-user.target EOF systemctl daemon-reload systemctl enable --now mysqld_exporter # 4. 验证 sleep 3 curl -s http://${LISTEN_ADDR}/metrics | head -20 echo "✅ 部署完成" ``` ### 2)使用方式 ```bash ./deploy.sh 127.0.0.1 exporter 'YourPass123' ``` ### 3)MySQL 提前建好监控账号(最小权限) ```sql CREATE USER 'exporter'@'localhost' IDENTIFIED BY 'YourPass123' WITH MAX_USER_CONNECTIONS 3; GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'localhost'; ``` --- ## 三、多实例不要多进程:用 **/probe 多目标模式** 官方支持**一个 exporter 监控多台 MySQL**,不用每个实例开一个进程。 ### 1)`.my.cnf` 多账号 ```ini [client] user=exporter password=YourPass123 [client.slave1] host=192.168.1.10 user=exporter password=YourPass123 [client.slave2] host=192.168.1.11 user=exporter password=YourPass123 ``` ### 2)启动一个 exporter ```bash mysqld_exporter --config.my-cnf=.my.cnf --web.listen-address=:9104 ``` ### 3)Prometheus 配置(动态探测) ```yaml scrape_configs:  - job_name: 'mysql-probe'    metrics_path: /probe    static_configs:      - targets:          - 192.168.1.10:3306          - 192.168.1.11:3306    relabel_configs:      - source_labels: [__address__]        target_label: __param_target      - source_labels: [__param_target]        target_label: instance      - target_label: __address__        replacement: 127.0.0.1:9104  # exporter 地址 ``` 访问: ``` http://exporter:9104/probe?target=192.168.1.10:3306&auth_module=client.slave1 ``` --- ## 四、更高级:用 Ansible 全集群自动化 适合 10+ 台机器: - 写一个 playbook,统一下发二进制、配置、systemd - 密码用 Ansible Vault 加密 - Prometheus 配置自动生成 + 重载 一句话:**一次编写,到处部署,永不手抖**。 --- ## 五、避坑 3 点 1. **必须开 performance_schema**(否则很多指标为空)   ```ini   [mysqld]   performance_schema = ON   ``` 2. **`.my.cnf` 权限必须 600**,否则 exporter 报警 3. **不要用 root 当监控用户**,遵循最小权限原则 --- 结论: - 单机:用上面脚本 **1 分钟搞定** - 多实例:用 **/probe 模式**,一个 exporter 管所有 - 大规模:上 **Ansible**,全集群自动化

扫描二维码推送至手机访问。

版权声明:本文由手机数据加工厂发布,如需转载请注明出处。

本文链接:https://www.cryp6.com/?id=123

“还在手动配 mysql_exporter?” 的相关文章

 iPhone如何快速整理你的相册 iPhone怎么备份照片比较方便

iPhone如何快速整理你的相册 iPhone怎么备份照片比较方便

一、iPhone如何快速整理你的相册当手机中的照片或视频太多,管理变得越来越麻烦时,我们可以利用相册中自带的功能对照片进行分类,下面看看iPhone如何快速整理相册。1、打开手机中的【照片】,点击底部导航栏中的【相簿】按钮。在页面左上方点击【+】号图标,在弹出的列表中选择【新建相簿】,如下图所示。图...

什么是科技数据?

科技数据,本质上是通过电子设备(手机、电脑、服务器等)采集、存储、传输和处理的各类信息的集合,以二进制代码的形式存在,是数字科技的基础。与我们传统认知中的“文件”不同,科技数据的范畴更广泛,既包括我们主动创建的照片、文档、视频(主动数据),也包括设备运行时自动生成的缓存、日志、定位信息(被动数据);...

无线传文件很慢?

无线传文件很慢?原因 + 解决办法(简洁科普版)一、变慢主要原因连接的是2.4G 低频 WiFi,网速本身就慢、干扰多。手机和电脑距离太远、隔墙,信号变弱。同一网络设备太多,WiFi 拥堵卡顿。用微信、QQ 传输,系统会压缩文件,还限速。后台下载、刷视频占用网速,挤占传输速度。二、快速提速方法切换连...

怎样才能提高手机电脑数据同步的速度?

怎样提高手机与电脑数据同步的速度切换高速网络优先连接5G 频段 WiFi,避开速度慢、干扰大的 2.4G WiFi;手机和电脑连接同一个无线网络,使用局域网传输,不消耗外网网速,速度更快。缩短设备距离让手机和电脑靠近摆放,远离墙壁、金属障碍物,减少信号遮挡,保证网络信号稳定强劲。关闭占用网速的程序暂...

如何关闭手机、电脑的云同步功能

如何关闭手机、电脑的云同步功能

下面分手机(iOS / 安卓主流品牌)和电脑(Windows/Mac),一步步教你关闭云同步(可选择性关,也可全关),以及关闭后如何防止数据被自动恢复 / 覆盖。一、苹果手机(iPhone/iPad):关闭 iCloud 同步1)选择性关闭(推荐:只关照片 / 文档,保留联系人等)打开 设置 → 点...

 如何在电脑上关闭云同步功能?

如何在电脑上关闭云同步功能?

下面分 Windows 和 Mac,把系统自带云同步和 ** 常见第三方云盘(OneDrive/iCloud/ 百度网盘)** 都一次性关掉,适合你要 “改记录不被覆盖” 的场景。Windows 电脑:关闭所有云同步1. 先关 OneDrive(最关键)右下角任务栏,找到蓝色云朵 OneDrive...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。