mysql 有则更新无则添加_Prometheus+Grafana监控MySQL性能

681992dabb99cd49e74ab28d38307c8c.png

今天来写一篇监控MySQL数据库的的监控方案:Prometheus+Grafana监控mysql性能

1.监控方案介绍

祖传老图修一修:

6974c83562d8a881b2b25b6ae1348eee.png

解释一波:①mysqld_exporter用来收集数据库的性能数据 今天主讲

②node_exporter用来收集服务器的性能数据功能和上一篇的telegraf差不多

③prometeus 其实大家应该在上一篇看到过了

7ab8271764885d4a27a68e5829b17f97.png

so大家应该猜也能猜到它和influxDB是个差不多的东东。。。just so so

通过http(面试必考协议,成天碰见就是讲不清QAQ)协议抓取被监控组件的状态,抓取方式就是那些exporter了

至于读法吗:普罗米修斯QAQ

2.环境搭建

1.启动服务器数据库

38ed5f1b5730739bdc1e34a0d8cf5af8.png

缺少mysql.sock文件,可以从/tmp/mysql.sock copy过去一份,然后重启数据库

835ded5d33cd9b03d805223b7be791a3.png

数据库启动成功

设置下数据库root用户密码

26cd50bce7e9bad16f99af961cf79d5e.png

(⊙﹏⊙)修改记得更新,刚才忘记更新,密码一直不生效

更新命令

14c2da9abc8b2ec6c82466cfae94b074.png

现在要开始开一个数据库用户,为什么要开呢,因为mysqld_exporter需要这个用户权限获取数据库信息 至于为什么不能用root用户我想应该是。。。额正常都不会用root用户吧,说服自己就好,机智的一笔

0099d7fbfdab9560421aca28c6aa2501.png

刷新一下,查一下mysql.user表是否添加了新增的数据库用户

5b607ec5d2ee475c455761f8758ce28c.png

马赛克区域是用户名

2.安装Prometheus

三步走了

拖:

1848e67f34b94572046205b6c159dd2b.png

解压改名:

526c4f503495076924630ffc117f4544.png

开端口:

prometeus.yml是启动文件,现在要修改下它的配置,开两个端口,一个端口用来收集mysql的数据,一个用来收集服务器的数据

d83e070466420d6335f84a5356a2376f.png

添加两个端口:

c26f1b30eaf32fbb2faabd55f05b8102.png

然后和上篇文章把3000端口在防火墙永久添加白名单,这两个也需要

命令firwall-cmd --add-port=端口号/tcp --permanent

5a98a2982c57d140611eb43d45a2bf04.png

添加成功!给与promethus.yml 777权限

152d70c545630db5df70c0b592ebaa5a.png

添加端口步骤千万搞好格式,要不然乱七八糟错,和上面的严格对齐

cde69ec25811e242a33990b166b4c4ed.png

我上面那个看着都和这边对齐了,但是还是报错,没办法直接复制了 - job_name: 'prometheus' 居然好了,坑死


然后启动一下,官方命令 ./prometheus --config.file=prometheus.yml &

8556106c1fe78a0f19aa9c2128731fe1.png

好了,可以用本地浏览器访问了,试下

3f957184b56adb044348dfe0b4f1b45d.png

点击 Status-targets,可以看到官方自带的prometheus可以访问了(up)

linux和mysql还是不能的(down),所以要安装exporter

95b83db135521e7c7e107dc5857a3e4d.png

3.安装mysqld_exporter

傻瓜操作

da17e1df87155f810ae79d63392e3cc2.png

连接数据库

在mysql_exporter下创建一个my.cnf文件和mysql里自己创建的用户连接

6810e914275902bfafbb8ed477fc9d26.png

然后启动一下

然后又搞错了,一定要是my.cnf格式啊,我写成my.conf QAQ

修改文件名启动成功 ./mysqld_exporter --config.my-cnf=my.cnf

0a44e5ce651fe480014fefe549ba7561.png

然后刷新一下刚才的网址

bc63e14c82bc7b533afe0937797c0627.png

SO现在就差最后一步了,grafana显示prometheus的数据

尴尬,prometheus自带的监控界面没有数据,不知道哪里没通,先睡觉,明天搞定

be8108c3764b47b691f2594177c43478.png

分开,上次遇到的问题应该就是服务器时间和Prometheus时间没对上导致的。

下面直接用grafana监控吧。

老操作,先systemctl start grafana-server启动服务,使用ip:3000访问。

现在添加数据源,选择prometheus

e6b1d80ce2ad1bd19a61b60743eaa24f.png

test下,连接成功

71b2133c36efa9d200828db52a132587.png

我想死了,修改完还是不同步数据QAQ,但是明显连接成功,服务器和本地时区、时间都一样了,想不通了



打死我吧,我不在数据库里新增用户了,在my.cnf直接配置root用户,有数据了,气死了到现在不知道咋回事。

现在展示下效果图:

d69490002240eefe99fc1cf7f12176dd.png

然后请教了一下业内大神,可能账号权限有问题,但是我明明啥权限都给了QAQ。。。

基本搭建就这样,大家如果碰到什么困难可以留言,我周末可以协助一下,嘻嘻

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值