目标:需要实现mysql的性能监控,如cpu占用率,内存占用率,连接数,执行效率等等.......
如图所示:
实现思路一:
使用linux的top命令,定时查看mysql的cup占用率,内存占用率........,然后将得到的数据存放进入数据库,后端拿到数据库数据,前端拿到数据后,进行数据重组,结合种种图表(echars,AntV G6......)进行页面显示,十分繁琐笨拙;
实现思路二:
使用业界现成框架进行监控,直接调用,这里使用的是Prometheus进行数据监控,grafana进行页面的数据展示;
prometheus:
官网地址:https://prometheus.io/docs/introduction/first_steps/
特点:官网文档有介绍,它可以很快监控我们数据库的原因之一,就是使用的时间序列数据库进行的数据存储,并且使用http进行的数据拉取,我们使用的时候需要先在linux中安装一个探针,mysql_export,让这个探针实时探取mysql的数据,然后将数据通过端口暴露出来,prometheus再通过访问我们暴露的端口,进行数据监控;
使用:①探针安装,访问官网,向下滑就可以找到探针安装地址
使用命令进行下载也可以
wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.darwin-amd64.tar.gz
②linux上安装完成后,使用命令 tar -zxvf 进行解压
③创建访问用户:
因为需要探取mysql服务,所以就需要进行mysql登录,我们进入mysql创建一个mysql用户,专门用来探取mysql数据(这里需要专门创建用户的原因是因为,如果我们使用平时的用户,当我们用户修改密码时,我们的探取就会失败,或者查询用户操作日志十分混乱,所有有必要进行创建,如果不想创建直接使用root用户也是可以的)
CREATE USER 'mysqld_exporter'@'localhost' IDENTIFIED BY 'mysqldExporter1993' WITH MAX_USER_CONNECTIONS 3; GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'mysqld_exporter'@'localhost';
MAX_USER_CONNECTIONS 3(这个参数是限制连接数,避免mysql压力过大)
④进入解压后的 mysql_exproter 目录,创建配置文件my.cnf,进行启动配置
[client] user=mysqld_exporter password=mysqldExporter1993 host=localhost port=3306
⑤启动mysql_exprot
建议:先使用第一个启动,实时查看控制台,启动完全没有问题后,再使用第二个启动
/Users/huan/soft/prometheus/mysqld_exporter/mysqld_exporter \ --config.my-cnf="/Users/huan/soft/prometheus/mysqld_exporter/my.cnf" \ --web.listen-address="0.0.0.0:9088"; (正常启动,关闭shell窗口,程序自动停止)
nohup /Users/huan/soft/prometheus/mysqld_exporter/mysqld_exporter \
--config.my-cnf="/Users/huan/soft/prometheus/mysqld_exporter/my.cnf" \
--web.listen-address="0.0.0.0:9088" \
--log.level=debug \
> logs/mysqld_exporter.out 2>&1 &
(后台启动)
⑥访问端口
访问我们进行配置的9088端口 ,注意:如果配置用户的时候权限没给够,启动控制台的时候会报错,但是你一样可以看见这网页,注意启动时查看控制台
⑦安装prometheus(https://prometheus.io/download/),并tar -zxvf 解压
⑧启动配置接入mysql
进入prometheus,修改prometheus.yml,将这段配置加入
scrape_configs: - job_name: 'mysqld-exporter' static_configs: - targets: ['localhost:9088'] labels: nodename: 'mysql'
⑨启动prometheus ,查看监控端口,实现监控
nohup ./prometheus --config.file=/data/prometheus/prometheus.yml --web.listen-address=0.0.0.0:7778 > /data/logs/prometheus.log 2>&1 &
grafana:
官网:https://grafana.com/,我们使用它连接prometheus来进行数据的展示
安装直通车:https://blog.csdn.net/wdy_2099/article/details/124211397
使用:
① 修改配置文件
进入解压后的文件,进入conf,里面有defaults.ini,文件,就是配置文件,可以进行端口修改
②登录使用
创建一个新的dashboards,配置peometheus连接,就可以进行监控了
标签:exporter,--,使用,prometheus,mysqld,mysql,性能指标 From: https://www.cnblogs.com/zhangzheshuai/p/17592630.html