一、mysqld_exporter安装

下载页面

https://github.com/prometheus/mysqld_exporter/releases

下载最新版本

https://github.com/prometheus/mysqld_exporter/releases/download/v0.12.0/mysqld_exporter-0.12.0.linux-amd64.tar.gz

登录到mysql服务器,解压,并运行

# 解压
tar zxvf mysqld_exporter-0.12.0.linux-amd64.tar.gz -C /usr/src/
cd /usr/src/mysqld_exporter-0.12.0.linux-amd64 # 创建目录,复制文件
mkdir -p /etc/mysqld_exporter/bin/
mkdir -p /etc/mysqld_exporter/conf
cp mysqld_exporter /etc/mysqld_exporter/bin/

二、mysql授权

mysqld_exporter需要连接Mysql,首先为它创建用户并赋予所需的权限:

grant replication client,process on *.* to exporter@'%' identified by '27dc703b';
grant select on performance_schma.* to exporter@'%';
flush PRIVILEGES;

三、运行mysqld_exporter

新建配置文件

vi /etc/mysqld_exporter/conf/my.cnf

内容如下:

[client]
user=exporter
password=27dc703b
port=
host=127.0.0.1

启动进程

/etc/mysqld_exporter/bin/mysqld_exporter --config.my-cnf="/etc/mysqld_exporter/conf/my.cnf" --web.listen-address=":9104"

观察是否有报错信息,如果没有报错信息,就可以封装service服务了

四、mysqld_exporter封装service

vim /lib/systemd/system/mysqld_exporter.service

内容如下:

[Unit]
Description=mysqld monitor
After=network.target [Service]
ExecStart=/etc/mysqld_exporter/bin/mysqld_exporter --config.my-cnf="/etc/mysqld_exporter/conf/my.cnf" --web.listen-address=":9104"
ExecStop=-/sbin/start-stop-daemon --quiet --stop --retry QUIT/
TimeoutStopSec=
KillMode=mixed [Install]
WantedBy=multi-user.target

重新加载service配置文件,设置开机自启动,并启动服务

systemctl daemon-reload
systemctl enable mysqld_exporter.service
systemctl start mysqld_exporter.service

查看端口

root@ubuntu:~# netstat -anpt|grep mysqld_exporte
tcp6 ::: :::* LISTEN /mysqld_exporte

使用网页访问metrics

http://192.168.1.24:9104/metrics

效果如下:

如果数据输出正常,则表示成功。

五、promethus增加job

vim /opt/prometheus/prometheus.yml

增加以下内容:

- job_name: mysqld_exporter
static_configs:
- targets:
- 192.168.1.24:
labels:
instance: mysql-

重启prometheus

root@ubuntu:/opt/prometheus# docker ps |grep prometheus
0fa256f85750 prom/prometheus "/bin/prometheus --c…" About an hour ago Up seconds 0.0.0.0:->/tcp wizardly_kirch root@ubuntu:/opt/prometheus# docker restart 0fa256f85750

访问页面:

http://192.168.1.24:9090/targets

确保mysqd_exporter状态为UP

六、Grafana导入Dashboards

下载json文件

https://files.cnblogs.com/files/xiao987334176/MySQL%E7%9B%91%E6%8E%A7-1577183740876.zip

解压之后,里面就是一个json文件

点击import

上传json文件,设置Name,选择prometheus,点击import

等待一段时间,数据多了之后,效果如下:

promethus监控mysql的更多相关文章

  1. 分布式监控系统Zabbix-3.0.3-完整安装记录(7)-使用percona监控MySQL

    前面已经介绍了分布式监控系统Zabbix-3.0.3-完整安装记录(2)-添加mysql监控,但是没有提供可以直接使用的Key,太过简陋,监控效果不佳.要想更加仔细的监控Mysql,业内同学们都会选择 ...

  2. Zabbix监控mysql performance

    介绍 zabbix监控mysql性能,使用zabbix自带的mysql监控模板,可以监控以下内容OPS(增删改查).mysql慢查询数量.mysql请求\响应流量带宽 配置 新建mysql监控用户 G ...

  3. 监控mysql各种选项

    安装mysql之后,需要对mysql服务进行监控.   nagios开源自带的check_mysql 对 mysql 的slave 机监控倒是不错.但是对数据库主机监控就略显不足了.   使用一个监控 ...

  4. zabbix通过第三方插件percona监控mysql数据库

     zabbix通过第三方插件percona监控mysql数据库                                                                     ...

  5. zabbix利用自带的模板监控mysql数据库

    zabbix利用自带的模板监控mysql数据库 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 有些东西你不会的时候觉得它特别难,但是当你去做的时候就发现如此的简单~zabbix功能 ...

  6. 详解 Spotlight on MySQL监控MySQL服务器

    前一章详解了Spotlight on Unix 监控Linux服务器 ,今天再来看看Spotlight on MySQL怎么监控MySQL服务器. 注:http://www.cnblogs.com/J ...

  7. cacti监控mysql

    cacti监控mysql 2013-09-25 16:21:43 分类: LINUX 原文地址:cacti监控mysql 作者:baochenggood cacti监控mysql 1 下载cacti监 ...

  8. zabbix 监控MySQL

    现在我来说一下我的监控环境 zabbix-3.0.3 MySQL-5.6.23 1.首先我们要登录MySQL,创建一个监控MySQL的用户 GRANT USAGE,PROCESS,SUPER,REPL ...

  9. shell脚本监控MySQL服务是否正常

    监控MySQL服务是否正常,通常的思路为:检查3306端口是否启动,ps查看mysqld进程是否启动,命令行登录mysql执行语句返回结果,php或jsp程序检测(需要开发人员开发程序)等等: 方法1 ...

随机推荐

  1. rust-vmm 学习

    V0.1.0 feature base knowledge: Architecture of the Kernel-based Virtual Machine (KVM) 用rust-vmm打造未来的 ...

  2. shell脚本编程基础知识点

    整数比较: -eq:测试两个整数是否相等:相等为真,不等为假 -ne:测试两个整数是否不等:不等为真,相等为假 -gt:测试一个数是否大于另一个数:大于为真,否则为假 -lt:测试一个数是否小于另一个 ...

  3. session使用方法

    每次客户端检索网页时,都要单独打开一个服务器连接,因此服务器不会记录下先前客户端请求的任何信息. 如何维持客户端与服务器的会话?方法之一: servlet中写入: //新建一个session保存用户名 ...

  4. Dubbo+zookeeper实现单表的增删改查

    1.数据库准备 建表语句 CREATE TABLE `tb_brand` ( `id` ) NOT NULL AUTO_INCREMENT, `name` ) DEFAULT NULL COMMENT ...

  5. join 分割数组

    返回一个字符串.该字符串是通过把 arrayObject 的每个元素转换为字符串,然后把这些字符串连接起来,在两个元素之间插入 separator 字符串而生成的. separator可以传可以传,不 ...

  6. <英狼>--团队作业3 王者光耀--终极版

    队员 陶俊宇_031702113 卞永亨_031702229 唐怡_031702109 Github 吉哈---King-Shines 队员输出百分比,数据为估值仅供参考 MVP:队长:陶俊宇 60% ...

  7. 2019 SDN第3次上机作业

    0.报文类型与含义 1.Controller-to-Switch 报文 ​ Cortoller-to-Switch是由控制器初始化并下发给交换机的报文类型,其可能会要求交换机回复对应的报文,此类型报文 ...

  8. golang调用 exec命令 出现too many open files

    systemd 启动的服务, 跟系统的ulimit 没有关系. 大概的意思就是通过systemd启动的服务,不会使用ulimit中的配置,需要在systemd中或者service配置文件中定义,可以通 ...

  9. Nginx 必须知道哪些事?

    Nginx(发音同engine x)是一个异步框架的 Web 服务器,也可以用作反向代理,负载平衡器 和 HTTP 缓存.该软件由 Igor Sysoev 创建,并于2004年首次公开发布.同名公司成 ...

  10. SQL Server导入Excel文件报错

    目录 文本被截断,或者一个或多个字符在目标代码页中没有匹配项 原因 解决方法 该值违反了该列的完整性约束 空行 没有设置为允许为NULL 我以前也导入过数据,也没报错,今天再次导入数据的时候,发现了两 ...