专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像 官方专业版轩辕镜像 官方专业版官方专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 1072982923

prom/mysqld-exporter Docker 镜像 - 轩辕镜像

mysqld-exporter
prom/mysqld-exporter
自动构建
Prometheus MySQL导出器,用于收集MySQL数据库性能指标并暴露给Prometheus监控系统,支持实时监控与指标分析。
81 收藏0 次下载
😎 镜像稳了,发布才敢点回车
版本下载
😎 镜像稳了,发布才敢点回车

MySQL Server Exporter

![Go Report Card]([***]

Prometheus exporter for MySQL server metrics.

Supported versions:

  • MySQL >= 5.6.
  • MariaDB >= 10.3

NOTE: Not all collection methods are supported on MySQL/MariaDB < 5.6

Building and running

Required Grants
sql
CREATE USER 'exporter'@'localhost' IDENTIFIED BY 'XXXXXXXX' WITH MAX_USER_CONNECTIONS 3;
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'localhost';

NOTE: It is recommended to set a max connection limit for the user to avoid overloading the server with monitoring scrapes under heavy load. This is not supported on all MySQL/MariaDB versions; for example, MariaDB 10.1 (provided with Ubuntu 18.04) does not support this feature.

Build
make build
Running

Single exporter mode

Running using .my.cnf from the current directory:

./mysqld_exporter <flags>

Multi-target support

This exporter supports the multi-target pattern. This allows running a single instance of this exporter for multiple MySQL targets.

To use the multi-target functionality, send an http request to the endpoint /probe?target=foo:3306 where target is set to the DSN of the MySQL instance to scrape metrics from.

To avoid putting sensitive information like username and password in the URL, you can have multiple configurations in config.my-cnf file and match it by adding &auth_module=<section> to the request.

Sample config file for multiple configurations

    [client]
    user = foo
    password = foo123
    [client.servers]
    user = bar
    password = bar123

On the prometheus side you can set a scrape config as follows

    - job_name: mysql # To get metrics about the mysql exporter’s targets
      metrics_path: /probe
      params:
        # Not required. Will match value to child in config file. Default value is `client`.
        auth_module: [client.servers]
      static_configs:
        - targets:
          # All mysql hostnames or unix sockets to monitor.
          - server1:3306
          - server2:3306
          - unix:///run/mysqld/mysqld.sock
      relabel_configs:
        - source_labels: [__address__]
          target_label: __param_target
        - source_labels: [__param_target]
          target_label: instance
        - target_label: __address__
          # The mysqld_exporter host:port
          replacement: localhost:9104

Flag format

Example format for flags for version > 0.10.0:

--collect.auto_increment.columns
--no-collect.auto_increment.columns

Example format for flags for version <= 0.10.0:

-collect.auto_increment.columns
-collect.auto_increment.columns=[true|false]
Collector Flags
NameMySQL VersionDescription
collect.auto_increment.columns5.1Collect auto_increment columns and max values from information_schema.
collect.binlog_size5.1Collect the current size of all registered binlog files
collect.engine_innodb_status5.1Collect from SHOW ENGINE INNODB STATUS.
collect.engine_tokudb_status5.6Collect from SHOW ENGINE TOKUDB STATUS.
collect.global_status5.1Collect from SHOW GLOBAL STATUS (Enabled by default)
collect.global_variables5.1Collect from SHOW GLOBAL VARIABLES (Enabled by default)
collect.heartbeat5.1Collect from heartbeat.
collect.heartbeat.database5.1Database from where to collect heartbeat data. (default: heartbeat)
collect.heartbeat.table5.1Table from where to collect heartbeat data. (default: heartbeat)
collect.heartbeat.utc5.1Use UTC for timestamps of the current server (pt-heartbeat is called with --utc). (default: false)
collect.info_schema.clientstats5.5If running with userstat=1, set to true to collect client statistics.
collect.info_schema.innodb_metrics5.6Collect metrics from information_schema.innodb_metrics.
collect.info_schema.innodb_tablespaces5.7Collect metrics from information_schema.innodb_sys_tablespaces.
collect.info_schema.innodb_cmp5.5Collect InnoDB compressed tables metrics from information_schema.innodb_cmp.
collect.info_schema.innodb_cmpmem5.5Collect InnoDB buffer pool compression metrics from information_schema.innodb_cmpmem.
collect.info_schema.processlist5.1Collect thread state counts from information_schema.processlist.
collect.info_schema.processlist.min_time5.1Minimum time a thread must be in each state to be counted. (default: 0)
collect.info_schema.query_response_time5.5Collect query response time distribution if query_response_time_stats is ON.
collect.info_schema.replica_host5.6Collect metrics from information_schema.replica_host_status.
collect.info_schema.rocksdb_perf_context5.6Collect RocksDB metrics from information_schema.ROCKSDB_PERF_CONTEXT.
collect.info_schema.tables5.1Collect metrics from information_schema.tables.
collect.info_schema.tables.databases5.1The list of databases to collect table stats for, or '*' for all.
collect.info_schema.tablestats5.1If running with userstat=1, set to true to collect table statistics.
collect.info_schema.schemastats5.1If running with userstat=1, set to true to collect schema statistics
collect.info_schema.userstats5.1If running with userstat=1, set to true to collect user statistics.
collect.mysql.user5.5Collect data from mysql.user table
collect.perf_schema.eventsstatements5.6Collect metrics from performance_schema.events_statements_summary_by_digest.
collect.perf_schema.eventsstatements.digest_text_limit5.6Maximum length of the normalized statement text. (default: 120)
collect.perf_schema.eventsstatements.limit5.6Limit the number of events statements digests by response time. (default: 250)
collect.perf_schema.eventsstatements.timelimit5.6Limit how old the 'last_seen' events statements can be, in seconds. (default: 86400)
collect.perf_schema.eventsstatementssum5.7Collect metrics from performance_schema.events_statements_summary_by_digest summed.
collect.perf_schema.eventswaits5.5Collect metrics from performance_schema.events_waits_summary_global_by_event_name.
collect.perf_schema.file_events5.6Collect metrics from performance_schema.file_summary_by_event_name.
collect.perf_schema.file_instances5.5Collect metrics from performance_schema.file_summary_by_instance.
collect.perf_schema.file_instances.remove_prefix5.5Remove path prefix in performance_schema.file_summary_by_instance.
collect.perf_schema.indexiowaits5.6Collect metrics from performance_schema.table_io_waits_summary_by_index_usage.
collect.perf_schema.memory_events5.7Collect metrics from performance_schema.memory_summary_global_by_event_name.
collect.perf_schema.memory_events.remove_prefix5.7Remove instrument prefix in performance_schema.memory_summary_global_by_event_name.
collect.perf_schema.tableiowaits5.6Collect metrics from performance_schema.table_io_waits_summary_by_table.
collect.perf_schema.tablelocks5.6Collect metrics from performance_schema.table_lock_waits_summary_by_table.
collect.perf_schema.replication_group_members5.7Collect metrics from performance_schema.replication_group_members.
collect.perf_schema.replication_group_member_stats5.7Collect metrics from performance_schema.replication_group_member_stats.
collect.perf_schema.replication_applier_status_by_worker5.7Collect metrics from performance_schema.replication_applier_status_by_worker.
collect.slave_status5.1Collect from SHOW SLAVE STATUS (Enabled by default)
collect.slave_hosts5.1Collect from SHOW SLAVE HOSTS
collect.sys.user_summary5.7Collect metrics from sys.x$user_summary (disabled by default).
General Flags
NameDescription
mysqld.addressHostname and port used for connecting to MySQL server, format: host:port. (default: localhost:3306)
mysqld.usernameUsername to be used for connecting to MySQL Server
config.my-cnfPath to .my.cnf file to read MySQL credentials from. (default: ~/.my.cnf)
log.levelLogging verbosity (default: info)
exporter.lock_wait_timeoutSet a lock_wait_timeout (in seconds) on the connection to avoid long metadata locking. (default: 2)
exporter.enable_lock_wait_timeoutEnable the lock_wait_timeout connection parameter. Makes the exporter compatible with older versions of MySQL. (default: true)
exporter.log_slow_filterAdd a log_slow_filter to avoid slow query logging of scrapes. NOTE: Not supported by Oracle MySQL.
tls.insecure-skip-verifyIgnore tls verification errors.
web.config.filePath to a web configuration file
web.listen-addressAddress to listen on for web interface and telemetry.
web.telemetry-pathPath under which to expose metrics.
versionPrint the version information.
Environment Variables
NameDescription
MYSQLD_EXPORTER_PASSWORDPassword to be used for connecting to MySQL Server
Configuration precedence

If you have configured cli with both mysqld flags and a valid configuration file, the options in the configuration file will override the flags for client section.

TLS and basic authentication

The MySQLd Exporter supports TLS and basic authentication.

To use TLS and/or basic authentication, you need to pass a configuration file using the --web.config.file parameter. The format of the file is described in the exporter-toolkit repository.

Customizing Configuration for a SSL Connection

If The MySQL server supports SSL, you may need to specify a CA truststore to verify the server's ***of-trust. You may also need to specify a SSL keypair for the client side of the SSL connection. To configure the mysqld exporter to use a custom CA certificate, add the following to the mysql cnf file:

ssl-ca=/path/to/ca/file

To specify the client SSL keypair, add the following to the cnf.

ssl-key=/path/to/ssl/client/key
ssl-cert=/path/to/ssl/client/cert

Using Docker

You can deploy this exporter using the prom/mysqld-exporter Docker image.

For example:

bash
docker network create my-mysql-network
docker pull prom/mysqld-exporter

docker run -d \
  -p 9104:9104 \
  -v /home/user/user_my.cnf:/.my.cnf \
  --network my-mysql-network  \
  prom/mysqld-exporter

heartbeat

With collect.heartbeat enabled, mysqld_exporter will scrape replication delay measured by heartbeat mechanisms. Pt-heartbeat is the reference heartbeat implementation supported.

Filtering enabled collectors

The mysqld_exporter will expose all metrics from enabled collectors by default. This is the recommended way to collect metrics to avoid errors when comparing metrics of different families.

For advanced use the mysqld_exporter can be passed an optional list of collectors to filter metrics. The collect[] parameter may be used multiple times. In Prometheus configuration you can use this syntax under the scrape config.

yaml
params:
  collect[]:
  - foo
  - bar

This can be useful for having different Prometheus servers collect specific metrics from targets.

Example Rules

There is a set of sample rules, alerts and dashboards available in the mysqld-mixin

查看更多 mysqld-exporter 相关镜像 →
bitnami/mysqld-exporter logo
bitnami/mysqld-exporter
Bitnami MySQL Server Exporter安全镜像,用于收集MySQL服务器指标供Prometheus监控,基于Photon Linux构建,提供强化安全特性、合规支持及供应链安全保障。
710M+ pulls
上次更新:未知
kubedb/mysqld-exporter logo
kubedb/mysqld-exporter
暂无描述
100K+ pulls
上次更新:未知
bitnamilegacy/mysqld-exporter logo
bitnamilegacy/mysqld-exporter
Bitnami遗留镜像,已不再提供更新
50K+ pulls
上次更新:未知
apecloud/mysqld-exporter logo
apecloud/mysqld-exporter
暂无描述
10K+ pulls
上次更新:未知
osism/mysqld-exporter logo
osism/mysqld-exporter
暂无描述
1.7K pulls
上次更新:未知

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

Dev Containers

VS Code Dev Containers 配置

MacOS OrbStack

MacOS OrbStack 容器配置

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
prom/mysqld-exporter
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
咨询镜像拉取问题请 提交工单,官方技术交流群:1072982923
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
咨询镜像拉取问题请提交工单,官方技术交流群:
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.