mysql_exporter在Linux上的安装与配置

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 等
1. 下载 mysqld_exporter 二进制文件

可以从 GitHub Releases 页面下载对应操作系统与架构的 mysql_exporter 二进制文件。
https://github.com/prometheus/mysqld_exporter/releases

wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.14.0/mysqld_exporter-0.14.0.linux-amd64.tar.gz
2. 解压 mysqld_exporter 二进制文件
tar -xvf mysqld_exporter-0.14.0.linux-amd64.tar.gz 
3. 配置 mysqld_exporter

使用 vim 编辑 mysqld_exporter-0.14.0.linux-amd64/my.cnf,添加 MySQL 连接信息。(my.cnf文件可能不存在)
例如:

[client]
user=mysqlexporter 
password=mysqlexporterpasswd
host=127.0.0.1:3306
4. 运行 mysqld_exporter

直接运行 mysql_exporter 二进制文件:

./mysqld_exporter-0.14.0.linux-amd64/mysqld_exporter --web.listen-address=:9104 --config.my-cnf=./mysqld_exporter-0.14.0.linux-amd64/my.cnf &

默认会监听在 9104 端口。

5. Prometheus 配置抓取 mysqld_exporter metrics

在 Prometheus 配置文件 prometheus.yml 中为 mysql_exporter 添加一个 job:

 - job_name: mysql_exporter  
  static_configs:  
 - targets: ['192.168.1.1:9104'] #mysql_exporter服务地址
6. 在 Prometheus Web UI 中验证 metrics

登录 Prometheus Web UI,切换到 Graph 页面,在 Expression 工具中输入 mysql_info,可以看到类似如下 metrics:

metricvalue
mysql_info{version=“xxx”}1.0
  • mysql_up:MySQL 服务器是否正常运行,1 为运行,0 为不运行
  • mysql_connections:活动的 MySQL 连接数量
  • mysql_max_connections:MySQL 允许的最大连接数量
  • mysql_threads_connected:当前打开的线程数量
  • mysql_threads_running:活动的(非睡眠的)线程数量
  • mysql_open_tables:当前打开的表数量
  • mysql_queries:服务器执行的语句数量
  • mysql_select_full_join:SELECT 查询中执行的全连接的数量
  • mysql_innodb_buffer_pool_pages_free:InnoDB buffer pool 中空闲页的数量
  • mysql_innodb_row_lock_waits:InnoDB 行锁等待的次数
  • mysql_innodb_row_lock_time:InnoDB 行锁等待的时间总和
  • mysql_global_variables_max_connections: 允许的最大连接数;
  • mysql_global_status_threads_connected: 当前开放的连接;
  • mysql_global_status_threads_running:当前开放的连接;
  • mysql_global_status_aborted_connects:当前开放的连接;
  • mysql_global_status_connection_errors_total{error=“max_connections”}:由于超出最大连接数导致的错误;
  • mysql_global_status_connection_errors_total{error=“internal”}:由于系统内部导致的错误;
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值