使用Grafana+Prometheus监控mysql服务性能

所属分类: 数据库 / Mysql 阅读数: 734
收藏 0 赞 0 分享

Prometheus(也叫普罗米修斯)官网:https://prometheus.io/docs/introduction/overview/

Grafana官网:https://grafana.com/enterprise

特征

普罗米修斯的主要特点是:

  • 具有由度量名称和键/值对标识的时间序列数据的多维数据模型
  • 一个灵活的查询语言 来利用这一维度
  • 不依赖分布式存储; 单个服务器节点是自治的
  • 时间序列集合通过HTTP上的拉模型发生
  • 推送时间序列通过中间网关支持
  • 通过服务发现或静态配置发现目标
  • 多种图形和仪表板支持模式

组件

Prometheus生态系统由多个组件组成,其中许多组件是可选的:

大多数Prometheus组件都是用Go编写的,因此很容易构建和部署为静态二进制文件。

今天本文重点给大家介绍使用Grafana+Prometheus监控mysql性能的方法详细介绍。

#cmd /usr/local

今天讲一下如何监控服务器中的mysql数据库的性能

一、数据库操作

1.mysql启动

#service mysqld start #启动数据库
#service mysqld stop #关闭数据库
#service mysqld restart #重启数据库

2、进入 mysql

mysql -u root -p

3、新增监控 mysql 账号

#use mysql
#GRANT ALL PRIVILEGES ON *.* TO '帐号'@'localhost' identified by '密码';<br>#flush privileges; #刷新

二、Prometheus 搭建

这里会给大家提供一个干净的普罗米修斯数据库的压缩包,大家解压就好

将压缩包放到服务器中

#cmd /usr/local

解压

#tar -zxvf prometheus-xxxxx

现在修改一下普罗米修斯的配置文件,在他的安装目录中有一个prometheus.yml文件,添加

- job_name: 'linux' static_configs: - targets: ['localhost:9100']  - job_name: 'mysql'    static_configs:    - targets: ['localhost:9104']

这里大家注意一个地方,要严格按照普罗米修斯的格式,不要随意添加空格和缩进,不然会出错

增加这一步的意义是给普罗米修斯开放两个端口,用于Grafana监控

设置文件权限:#chmod 777 prometheus.yml 从配置文件中启动

#./prometheus --config.file=prometheus.yml &

设置linux系统端口

firewall-cmd --list-ports ##列出开放的端口 firewall-cmd --add-port=9090/tcp --permanent ##永久添加 9090 端口 firewall-cmd --add-port=9100/tcp --permanent ##永久添加 9100 端口 firewall-cmd --add-port=9104/tcp --permanent ##永久添加 9104 端口 firewall-cmd --list-ports ##列出开放的端口 systemctl stop firewalld ##关闭防火墙 systemctl start firewalld ##开启防火墙 systemctl status firewalld ##查看防火墙状态 systemctl restart firewalld ##重启防火墙 systemctl disable firewalld ##开机关闭防火墙,即永久关闭

windows 访问:http://192.168.xx.xx:9090 statue-targets 查看端口状态为up为成功

三、mysqld_exporter 搭建

这里也会提供一个压缩包给大家

1、上传 mysqld_exporter 至 local 下 2、解压 tar -zxvf mysqld_exporter-xxxxxx 3、在/usr/local/mysql_exporter 下创建一个.my.cnf 配置文件,写上创建的用户名和密码

[client] user=xxxx password=xxxx

4、启动服务

在/usr/local/mysql_exporter 下启动./mysqld_exporter --config.my-cnf=my.cnf

5、安装lsof

#yum install lsof

6、查看 9104 端口占用情况

lsof -i:9104

7、

关闭进程 #kill -9 进程号

8、重启 Prometheus

四、Node_exporter 监控 linux

这里会给大家提供一个压缩包

1、上传至/usr/local/ 2、解压 tar -zxvf node_exporter-xxxxx 3、在/usr/local/node_exporter 目录下,启动 ./node_exporter & 4、通过浏览器访问 http://服务器 ip:9100/metrics 可以看到监控的数据

此时查看任务项均处于UP状态这样我们的监控平台就搭建起来了,至于Gafana如何与普罗米修斯数据库连接不做解释,需要的请看上几篇文章

附linux效果图

最后给大家附上本文所需压缩包,以及Grafana基于普罗米修斯数据库的监控模板

链接: https://pan.baidu.com/s/124sJ0cv3zghK02n4W-rSZw 提取码: w987

链接: https://pan.baidu.com/s/1l3pvorWAv3_VfwhL6G9PHg 提取码: m7nw

更多精彩内容其他人还在看

MariaDB(MySQL)创建、删除、选择及数据类型使用详解

这篇文章主要介绍了MariaDB(MySQL)创建、删除、选择及数据类型使用详解的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

mysql索引学习教程

在mysql 中,索引可以分为两种类型 hash索引和 btree索引。这篇文章主要介绍了mysql索引的相关知识,非常不错,具有参考借鉴价值,感兴趣的朋友一起看看吧
收藏 0 赞 0 分享

MySQL修改默认字符集编码的方法

这篇文章主要介绍了MySQL修改默认字符集编码的方法的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL中实现插入或更新操作(类似Oracle的merge语句)

这篇文章主要介绍了在MySQL中实现插入或更新操作(类似Oracle的merge语句)的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

mysql5.x升级到mysql5.7后导入之前数据库date出错的快速解决方法

这篇文章主要介绍了mysql5.x升级到mysql5.7后导入之前数据库date出错的快速解决方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

LNMP下使用命令行导出导入MySQL数据库的方法

这篇文章主要介绍了LNMP下使用命令行导出导入MySQL数据库的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

MySql中的IFNULL、NULLIF和ISNULL用法详解

在做项目中发现MySql里的isnull和mssql里的有点不同。接下来小编通过本文给大家介绍MySql中的IFNULL、NULLIF和ISNULL用法详解的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

Mysql 5.7 服务下载安装图文教程(经典版)

MySQL 5.7在诸多方面都进行了大幅的改进,主要在于安全性、灵活性、易用性、可用性和性能等几个方面。这篇文章主要介绍了Mysql5.7服务下载安装图文教程(经典版),需要的朋友可以参考下
收藏 0 赞 0 分享

SQL重复记录查询 查询多个字段、多表查询、删除重复记录的方法

下面小编就为大家带来一篇SQL重复记录查询 查询多个字段、多表查询、删除重复记录的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

mysql socket文件作用详解

这篇文章主要介绍了mysql socket文件作用的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多