Mysql性能监控可视化
前言
操作系统以及Mysql数据库的实时性能状态数据尤为重要,特别是在有性能抖动的时候,这些实时的性能数据可以快速帮助你定位系统或Mysql数据库的性能瓶颈,镜像你在Linux系统上使用top、iostat等命令工具一样,可以立刻定位OS的性能瓶颈是在I/O还是CPU上,所以手机和展示这些性能数据就尤为重要。根据监控图标的性能数据,能够很直观地指导你进一步做什么样的优化。
Lepus数据库监控系统实战
Lepus数据库监控系统简介
Lepus(天兔)数据库企业监控系统是一款专业、强大的企业数据库监控管理系统,适合监控数据库服务器较多的公司和监控云中数据库,将为企业大大简化监控部署流程。同时,Lepus系统内置了丰富的性能监控指标,让企业能够在数据库宕机前发现潜在的性能问题,减少企业因为数据库问题导致的直接损失。
Lepus数据库监控系统部署
Lepus官方下载地址http:/www.lepus.cc/soft/index,目前测试只支持CentOS、RedHat系统,Lepus监控平台是由PHP+Python开发的,所以安装需要Linux+Apache+Mysql+PHP(LAMP)环境。
安装Xampp
配置LAMP基础环境的方式有很多种,推荐使用xampp集成环境包进行安装。xampp是一个可靠的稳定的LAMP套件,目前已被诸多公司用于生产服务器的部署。
安装xampp的步骤非常简单,下载后给执行权限。
直接从官网下载会很慢,在此链接https://sourceforge.net/p/xampp/activity/?page=0&limit=100#562517092718461ea9b50767中选择想要的版本下载。
$ wget https://sourceforge.net/projects/xampp/files/XAMPP%20Linux/1.8.2/xampp-linux-x64-1.8.2-5-installer.run
$ chmod +x xampp-linux-x64-1.8.2-5-installer.run
$ ./xampp-linux-x64-1.8.2-5-installer.run #运行进行安装操作
追加环境变量,否则后面安装python模块会build失败!!!
$ vi /etc/profile #末尾添加下面环境变量
$ export PATH=$PATH:/opt/lampp/bin
$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/lampp/lib
$ export C_INCLUDE_PATH=$C_INCLUDE_PATH:/opt/lampp/include
$ source /etc/profile
启动
#常用命令
$ /opt/lampp/lampp start #启动
$ /opt/lampp/lampp stop #停止
$ rm -rf /opt/lampp #卸载
安装python基础模块
安装python环境时(python要求2.6以上,不支持python 3),需要先安装一些包:
$ yum -y install openssl-devel python-devel gcc urpmi xterm
$ yum install libffi-devel mysql-devel
接着安装数据库连接Python的驱动包,如果准备使用Lepus系统监控Mysql数据库,该模块必须下载安装,下载地址https://pypi.org/project/MySQL-python/。
$ wget https://pypi.python.org/packages/a5/e9/51b544da85a36a68debe7a7091f068d802fc515a3a202652828c73453cad/MySQL-python-1.2.5.zip#md5=654f75b302db6ed8dc5a898c625e030c
$ unzip MySQL-python-1.2.5.zip
$ cd MySQL-python-1.2.5 #进入目录
$ vim site.cfg #编辑site.cfg文件,加入mysql_config=/opt/lampp/bin/mysql_config命令
$ python setup.py build #安装python模块的脚本
$ python setup.py install #安装
如果出现‘No module named setup tools’,需要安装setuptools模块。
$ wget https://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz --no-check-certificate #下载setuptools包
$ tar -xvf setuptools-0.6c11.tar.gz
$ cd setuptools-0.6c11
$ python setup.py build #编译setuptools包
$ python setup.py install #执行安装
如果出现error: ‘MYSQL’ has no member named ‘reconnect’,把_mysql.c文件第2005行,if ( reconnect != -1 ) self->connection.reconnect = reconnect;注释掉。
测试驱动是否正常运行
在Lepus的安装文件包python目录中,可以找到测试文件,测试上述驱动是否安装正确。
$ python test_driver_mysql.py
$ cp /opt/lampp/lib/*.* /usr/lib #如果出现"XXX.so.18:cannot open shared object file: no such file or directory failed"之类问题,需要执行复制命令
ps:如果需要监控MongoDB,必须安装pymongo for python。如果需要监控Oracle,下载cx_oracle for python。
安装Lepus采集器
(1) 下载Lepus采集器(http://www.lepus.cc/soft/index),上传软件包到监控机服务器,解压。
$ unzip lepus_v3.7.zip
$ /opt/lampp/bin/mysql -uroot #进入mysql,版本高的话会显示MariaDB,不指定-p
mysql> create database lepus default character set utf8;
mysql> grant select,insert,update,delete,create on lepus.* to 'lepus_user'@'172.16.9.%' identified by '123456';
mysql> flush privileges;
xampp默认安装Mysql是没有密码的,为了安全起见,需要修改root用户密码,如果上面已经修改过,忽略此步。
mysql> UPDATE mysql.user SET Password=PASSWORD('123456') WHERE user='root';
mysql> flush privileges;
(2) 如果mysql的root用户密码已经修改,那么phpmyadmin中对应的密码也要修改:
$ vi /opt/lampp/phpmyadmin/config.inc.php #找到密码配置Authentication type修改掉password一行
phpmyadmin是数据库管理程序,用来创建管理数据库等操作。若不修改config.inc.php文件中的内容,则phpmyadmin无法打开页面。
(3) 进入Lepus_v3.7的sql子目录,导入里面的SQL文件:
$ cd lepus_v3.7/sql
$ /opt/lampp/bin/mysql -uroot -p123456 lepus < lepus_table.sql
$ /opt/lampp/bin/mysql -uroot -p123456 lepus < lepus_data.sql
(4) 安装Lepus程序。进入Lepus软件包的python文件夹,授予install.sh文件可执行权限,执行安装。
$ cd /opt/lepus_v3.7/python
$ chmod +x install.sh
$ ./install.sh
(5) 修改配置文件/usr/local/lepus/etc/config.ini,包括安装Lepus监控系统的监控机IP地址、连接监控数据库的账户和密码、监控数据库名称等。
#文件内容
host="172.16.9.3" #主机IP,如果使用虚拟机的话要用虚拟机IP,不要用127.0.0.1!!!
port=3306
user="lepus_user"
passwd="123456"
dbname="lepus"
(6) 执行启动命令lepus start启动Lepus采集进程
安装Web管理后台
复制lepus中php文件夹的文件到Apache对应的网站虚拟目录:
$ mkdir /opt/lampp/htdocs/lepus
$ cp -rf /opt/lepus_v3.7/php/* /opt/lampp/htdocs/lepus/
$ vi /opt/lampp/htdocs/lepus/application/config/database.php #修改PHP连接监控服务器的数据库信息,信息内容和上面一样。
#需要修改的部分
51 $db['default']['hostname'] = '172.16.9.4'; #虚拟机IP
52 $db['default']['port'] = '3306';
53 $db['default']['username'] = 'lepus_user';
54 $db['default']['password'] = '123456';
55 $db['default']['database'] = 'lepus';
56 $db['default']['dbdriver'] = 'mysql';
修改完后重启服务。
$ /opt/lampp/lampp restart
登录Lepus监控台
输入"http://监控机IP地址/lepus",打开监控界面,即可登录系统,默认管理员账号为admin、密码Lepusadmin。登录成功后,看见仪表盘页面则代表Lepus监控系统安装成功。
Mysql性能监控可视化的更多相关文章
- MySQL 性能监控 4 大指标
[编者按]本文作者为 John Matson,主要介绍 mysql 性能监控应该关注的 4 大指标. 文章系国内 ITOM 管理平台 OneAPM 编译呈现. MySQL 是什么? MySQL ...
- MySQL 性能监控4大指标——第二部分
[编者按]本文作者为 John Matson,主要介绍 mysql 性能监控应该关注的4大指标. 第一部分介绍了前两个指标:查询吞吐量与查询执行性能.本文将继续介绍另两个指标:MySQL 连接与缓冲池 ...
- MySQL 性能监控4大指标——第一部分
[编者按]本文作者为 John Matson,主要介绍 mysql 性能监控应该关注的4大指标. 第一部分将详细介绍前两个指标: 查询吞吐量与查询执行性能.文章系国内 ITOM 管理平台 OneAPM ...
- mysql性能监控相关
目录 一,获取mysql用户下的进程总数 二,主机性能状态 三,CPU使用率 四,磁盘IO量 五,swap进出量[内存] 六,数据库性能状态 七.querylog 八.mysqladmin的exten ...
- mysql性能监控软件pmm
具体配置操作步骤:1.在vmware或者virtualbox上安装centos镜像,可以选择阿里巴巴的镜像,下载速度快 centos7 修改yum源为阿里源,某下网络下速度比较快 首先是到yum源设置 ...
- Mysql性能监控项及sql语句
推荐一款mysql监控软件MONyog 1.查询缓存: mysql> show variables like '%query_cache%'; 2.缓存在Cache中线程数量thread_cac ...
- Mysql 性能监控及调优
死锁概念: 两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象 1.监控死锁(innotop): (1) 启用 innodb_status_file 在/etc/my.cnf添加如 ...
- myawr : mysql性能监控
myawr以mysql instance 为单位,每隔一段时间进行采样,然后把数据保存到数据库,以便分析.目前myawr脚本收集的信息包括5个部分: 1 系统方面的:负载.cpu.io.网络.swap ...
- Mysql性能监控
show processlist; show global variables like 'max_allowed_packet'; // QPS计算(每秒查询数)show global status ...
随机推荐
- Django 框架基本操作(二)
一.设计表结构 1.班级表结构 表名:grade 字段:班级名称(gname).成立时间(gdate).女生总数(ggirlnum).男生总数(gboynum).是否删除(isDelete) 2.学生 ...
- 题解 CF1062E Company
\(\texttt{Solution}\) 数据结构学傻的蒟蒻来写一个新思路 这题的正解是利用多个结点的 \(lca\) 是 \(dfs\) 序最大的结点和 \(dfs\) 序最小的结点的 \(lca ...
- Java集合源码分析(四)——Vector
简介 Vector 是矢量队列,它是JDK1.0版本添加的类.继承于AbstractList,实现了List, RandomAccess, Cloneable这些接口. 和ArrayList不同,Ve ...
- mysql批量刷新用户密码
不知道用户密码,并且不改变用户密码的情况下,批量刷新MySQL数据库用户的密码 select concat('alter user \'',user,'\'@\'',host,'\' identifi ...
- 浏览器开发者工具network详解
General概诉 请求链接 Request URL: 请求方式 Request Method: 代码状态 Status Code: 远程地址 Remote Address: 引用协议 用于过滤 Re ...
- 栈的应用:表达式括号匹配检测(C)
问题说明: 假设数学表达式中允许包含两种括号:圆括号"()"和方括号"[]",嵌套顺序任意. 正确的嵌套模式:( [ ] ( ) ).[ ( [ ] [ ] ) ...
- Java中的命名规范。
类:所有单词的首字母大写,如:TestJava. 方法:第1个单词的首字母小写,之后每个单词的首字母大写,如:getInfo(). 属性:第1个单词的首字母小写,之后每个单词的首字母大写,如:stud ...
- PHP远程代码执行漏洞:CVE-2019-11043
漏洞详情: Nginx上fastcgi_split_path_info在处理带有 %0a 的请求时,会因为遇到换行符 \n 导致PATH_INFO为空.而php-fpm在处理PATH_INFO为空的情 ...
- 图解 IP 基础知识!
我把自己以往的文章汇总成为了 Github ,欢迎各位大佬 star https://github.com/crisxuan/bestJavaer IP 协议 路由器对分组进行转发后,就会把数据包传到 ...
- linux中搭建phpmyadmin详细流程
一.phpmyadmin部署流程 1.1介绍 phpMyAdmin是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库. ...