史上最容易的 mysql 数据库性能测试监控平台搭建

在这里插入图片描述
数据库作为数据存储软件,在现在企业项目中,得到普遍应用,而 MySQL 作为免费的开源版本,更是得到大量企业的青睐,成为主流存储数据库。而数据库的性能,很大程度上,会影响项目应用服务的性能,所以,企业对 MySQL 数据库的性能是非常关注的。

今天,我们虽然不是讲解 MySQL 数据库的性能测试,但是,监控,作为性能测试或日常数据库维护必须的一环,我们还是有必要认真学习一下的。

说到 MySQL 数据库的监控,可能很多人,第一反应会是 jprofile 监控。但是,我不推荐。因为,我们有更方便,简单易上手的监控平台,就是我们今天讲的 grafana+prometheus 监控平台监控数据库。通过浏览器访问监控平台,可以看到如下图:

史上最容易的 mysql 数据库性能测试监控平台搭建_第1张图片

为了让零基础的同学,也能分分钟掌握这项技术,我们从安装数据库,搭建监控平台,一步步讲起。

创建环境

创建一个docker网络

docker network create monitor-network

创建一个mysql数据库

docker run -itd --name mysql_575 \

–network=monitor-network \

-p 3366:3306 \

-e MYSQL_ROOT_PASSWORD=123456 \

daocloud.io/library/mysql:5.7.5

完成这一步,你已经用 docker,创建了一个 5.7.5 版本的 MySQL 数据库,名称叫‘mysql_575’,数据库的 root 账户密码为 123456,数据库外部访问端口为 3366,可以用客户端工具,直接连接使用了。

接下来,我们搭建 grafana+prometheus 的监控平台

创建grafana容器

docker run -itd --name docker-grafana \

–network=monitor-network \

-p 3300:3000 \

grafana/grafana

创建prometheus容器

docker run -itd --name docker-prometheus \

–network=monitor-network \

-p 9990:9090 \

prom/prometheus

执行完这两个命令,我们的监控平台环境就已经安装好了

接下来,我们就安装数据库的监控

创建mysqld-exporter容器

docker run -itd -p 9114:9104 \

–name=my_exporter \

–network=monitor-network \

-e DATA_SOURCE_NAME=“root:123456@(mysql容器的hostname:3306)/” \

prom/mysqld-exporter

MySQL 容器的 hostname,可以通过 docker inspect mysql_575 查看到;

‘mysql_575’是我们安装的数据库的名称,也可以用查看到的 IPAddress 值

命令设置了监控工具外部访问端口为 9114

命令中 root:123456 是数据库安装 root 账户和密码

可以通过浏览器访问 http://安装了 mysqld-exporter 的机器 ip:9114 ,如果能正常访问且显示数据,说明数据库的监控已经安装好。

注意: 浏览器要能正常访问,需要服务器上开放 9114 端口

此时,我们环境安装工作就完成了。

接下来,就是配置 prometheus 收集存储监控数据。

配置 prometheus

从容器中拷贝出 prometheus 的配置文件

从Prometheus容器中拷贝配置文件到宿主机

docker cp docker_prometheus:/etc/prometheus/prometheus.yml $PWD

docker_prometheus 是上面创建 prometheus 容器时 name 后面的值

修改配置文件

修改prometheus.yml,在文件对底下,参照如下信息配置,注意书写格式

vim prometheus.yml

scrape_configs:

  • job_name: ‘prometheus’

    static_configs:

    • targets: [‘localhost:9090’]
  • job_name: ‘mysql-exporter’

    static_configs:

    • targets: [‘mysqld-export容器ip:9104’]

docker inspect my_exporter 可以查看到 mysql-exporter 容器的 IPAddress 信息; my_exporter 是上面安装数据库监控命令中 name 的值

把修改后的配置文件,拷贝到容器中,重启,使其生效

把修改后的Prometheus配置文件拷贝到容器中

docker cp $PWD/prometheus.yml docker_prometheus:/etc/prometheus/prometheus.yml

重启动prometheus容器

docker restart docker-prometheus

配置后,可以通过浏览器访问 http://安装了 prometheus 的机器 ip:9090 如果页面能正常访问,说明配置修改正常。

注意: 浏览器要能正常访问,需要服务器开放 9090 端口

现在,环境与配置文件都弄好了,就差在监控平台展示数据了

配置 granfan+prometheus 平台

Ⅰ、登录 grafana

浏览器访问 http://安装了 grafana 的机器 ip:3000 账号密码均为 admin

史上最容易的 mysql 数据库性能测试监控平台搭建_第2张图片

Ⅱ、添加 prometheus 数据源

登录后,在首页点击 ‘Add your fist data source’

史上最容易的 mysql 数据库性能测试监控平台搭建_第3张图片

在跳转页面,选择 Prometheus,填写相关信息

点击 back 按钮,回到首页

史上最容易的 mysql 数据库性能测试监控平台搭建_第4张图片

Ⅲ、引入模板 7362

点击 import

史上最容易的 mysql 数据库性能测试监控平台搭建_第5张图片

输入 7362,点击 load

史上最容易的 mysql 数据库性能测试监控平台搭建_第6张图片

即可看到数据库实时监控效果

史上最容易的 mysql 数据库性能测试监控平台搭建_第7张图片

ps:小编个人收集啦许多软测资料,希望能够帮到学软件测试的朋友们软件资料分享包括但不限于:Java自动化测试、Python自动化测试、性能测试、web测试、APP测试

测试开发工具包:appuim安装包、fiddler安装包(也有配套视频教程)、eclipse、git、jmeter、loadrunner、monkey、postman、soapul、Xmind等等

现在就有这么一个机会,我邀请你进入我们的软件测试学习交流群:914172719,备注“csdn”大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路。

最后也为大家准备了一份配套的学习资源,你能在 公众号:【伤心的辣条】免费获取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中资料包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!


好文推荐

转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧!

面试经:一线城市搬砖!又面软件测试岗,5000就知足了…

面试官:工作三年,还来面初级测试?恐怕你的软件测试工程师的头衔要加双引号…

什么样的人适合从事软件测试工作?

那个准点下班的人,比我先升职了…

测试岗反复跳槽,跳着跳着就跳没了…

包装成1年工作经验的测试工程师,我给他的面试前的建议如下

“入职一年,那个被高薪挖来的自动化软件测试被劝退了。”

4个月自学软件测试面进阿里!如何从功能测试转成自动化…我经历了什么

6000元报了培训班,3个月后我成功“骗”进了腾讯大厂,月薪15000

在这里插入图片描述

你可能感兴趣的:(程序员,软件测试,IT,mysql,数据库,database,测试工程师,软件测试)