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

还在手动配 mysql_exporter?

编辑3个月前 (04-27)PS视频48

别再手动一步步敲了,太容易错、效率还低。下面给你一套**一键部署 + 多实例管理 + 自动发现**的成熟方案,直接能用。 --- ## 一、手动配有多痛苦(你肯定遇到过) - 每台机器:下载 → 写 `.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://cryp6.com/?id=123

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

视频里的水印怎么去除干净?6种方法亲测有效,简单又无痕

视频里的水印怎么去除干净?6种方法亲测有效,简单又无痕

根据2026年行业报告显示,视频去水印工具市场规模已达43.8亿元,年增长率超21%,其中个人创作者占比59%,企业级客户采购量三年翻番。无论是剪辑短视频、二次创作素材,还是整理工作资料,“水印碍事”都成了高频痛点。要么遮挡关键信息,要么影响画面美感,更有甚者会被平台判定为非原创内容。今天分享6种亲...

手机与电脑如何传递数据

手机+电脑 极简传文件速查表(直接照做,保存备忘录) 一、通用懒人(所有手机+电脑,小文件) 微信/QQ文件传输助手 1. 手机、电脑登录同一账号 2. 互相发送图片、文档、截图 3. 缺点:视频、图片会压缩,大文件慢 二、有线极速(原图/大视频/无压缩,推荐) 安卓 + 电...

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

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

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

有哪些适合手机电脑数据同步的免费工具?

有哪些适合手机电脑数据同步的免费工具?

一、局域网高速互传(同 Wi‑Fi,最快、最稳、隐私好)1. LocalSend(强烈推荐,替代 AirDrop / 华为分享)平台:Windows /macOS/ Linux / Android /iOS免费:完全开源免费,无广告、无账号、不限大小特点:同 Wi‑Fi 下自动发现设备,一键发送点对...

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

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

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

 如何在华为云盘上彻底删除云端数据?

如何在华为云盘上彻底删除云端数据?

下面按 “先关同步→网页端删文件→清空最近删除→清其他云数据→收尾防恢复”,把华为云盘彻底删干净,且不影响本地文件。一、手机端:先关闭所有同步(必做)打开 设置 → 华为账号 → 云空间。关闭 云盘、图库、备忘录、联系人 等所有同步开关。弹窗选 保留在本机,避免本地文件被删。关闭 自动备份、数据同步...

发表评论

访客

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