10_Influxdb+Grafana监控Mysql
发布日期:2021-07-01 02:23:09 浏览次数:2 分类:技术文章

本文共 1489 字,大约阅读时间需要 4 分钟。

安装mysql服务器

yum install mariadb-server mariadb-devel -y

 

启动和开机启动

systemctl restart mariadb

systemctl enable mariadb

 

Mysql给只读权限,验证只读权限能否获取数据

grant usage on *.* to 'influxdb'@'127.0.0.1' identified by 'influxdb';

mysql -uinfluxdb -pinfluxdb -h 127.0.0.1 -e 'show global status\G'

 

监控点

当前连接数

每秒钟增、删、改、查的数量

每秒钟的连接量

 

Python安装mysql扩展

pip install pymysql -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

 

Python获取Mysql信息入库(/data/influxdb/mysql_status.py)

import pymysql

from influxdb import InfluxDBClient

client = InfluxDBClient('127.0.0.1', 8086, 'shijiange', '123456', 'shijiange')

 

conn = pymysql.connect("127.0.0.1","influxdb","influxdb","test" )

cur = conn.cursor(pymysql.cursors.DictCursor)

cur.execute('show global status')

fc = cur.fetchall()

for oneresult in fc:

        if oneresult['Variable_name'] in ['Threads_running','Com_select','Com_update','Com_delete','Com_insert', 'Connections']:

                data_list = [{'measurement': 'mysql_status', 'tags': {'item': 'mysql.%s' % oneresult['Variable_name']}, 'fields': {'value': int(oneresult['Value']) }}]

                client.write_points(data_list)

 

加入crontab,然后图表展示观察

* * * * * root python /data/influxdb/mysql_status.py >/dev/null 2>/dev/null

 

使用以下语句观察

while true;do mysql -uroot -h 127.0.0.1 mysql -e 'select user from user;'; sleep 1; done #实际统计出来每秒2次

use test;create table test (id int) #创建一个测试表

while true;do mysql -uroot -h 127.0.0.1 test -e 'insert into test values (1); update test set id = 2;delete from test;'; sleep 1; done #运行insert、update、delete观察

转载地址:https://mapengsen.blog.csdn.net/article/details/108781206 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:influxdb的可视化界面
下一篇:07_Influxdb+Grafana监控CPU

发表评论

最新留言

不错!
[***.144.177.141]2024年05月01日 20时23分46秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章