当前位置:   article > 正文

mysql运行状态监控研究内容_监控MySQL运行状态:MySQLD Exporter

mysql运行状态监控研究内容_监控MySQL运行状态:MySQLD Exporter

为了确保数据库的稳定运行,通常会关注一下四个与性能和资源利用率相关的指标:查询吞吐量、连接情况、缓冲池使用情况以及查询执行性能等。

监控数据库吞吐量

对于数据库而言,最重要的工作就是实现对数据的增、删、改、查。为了衡量数据库服务器当前的吞吐量变化情况。在MySQL内部通过一个名为Questions的计数器,当客户端发送一个查询语句后,其值就会+1。可以通过以下MySQL指令查询Questions等服务器状态变量的值:

mysql> SHOW GLOBAL STATUS LIKE "Questions";

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| Questions | 1326 |

+---------------+-------+

1 row in set (0.00 sec)

MySQLD Exporter中返回的样本数据中通过mysql_global_status_questions反映当前Questions计数器的大小:

# HELP mysql_global_status_questions Generic metric from SHOW GLOBAL STATUS.

# TYPE mysql_global_status_questions untyped

mysql_global_status_questions 1016

通过以下PromQL可以查看当前MySQL实例查询速率的变化情况,查询数量的突变往往暗示着可能发生了某些严重的问题,因此用于用户应该关注并且设置响应的告警规则,以及时获取该指标的变化情况:

rate(mysql_global_status_questions[2m])

一般还可以从监控读操作和写操作的执行情况进行判断。通过MySQL全局状态中的Com_select可以查询到当前服务器执行查询语句的总次数:相应的,也可以通过Com_insert、Com_update以及Com_delete的总量衡量当前服务器写操作的总次数,例如,可以通过以下指令查询当前MySQL实例insert语句的执行次数总量:

mysql> SHOW GLOBAL STATUS LIKE "Com_insert";

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| Com_insert | 0 |

+---------------+-------+

1 row in set (0.00 sec)

从MySQLD Exporter的/metrics返回的监控样本中,可以通过global_status_commands_total获取当前实例各类指令执行的次数:

# HELP mysql_global_status_commands_total Total number of executed MySQL commands.

# TYPE mysql_global_status_commands_total counter

mysql_global_status_commands_total{command="admin_commands"} 0

mysql_global_

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号