一、环境说明

1、服务器角色

服务器角色

172.18.35.29

10.160.22.14 (MySQL Master)

10.160.22.47 (MySQL Slave)

监控点

YES

NO

NO

被监控点

NO

YES

YES

2、系统环境

CentOS 6.2 x86_64

3、环境要求

(1)、MySQL 5.0 及以上       (用来存储监控系统采集的数据)

(2)、Apache 2.2 及以上        (WEB 服务器运行服务器)

(3)、PHP 5.3 以上 (WEB 界面)

(4)、Python 2                       (推荐 2.7 版本,其他版本未做测试,执行数据采集和报警任务)

(5)、MySQLdb for python     (Python 连接 MySQL 的接口)

4、环境说明

本次的监控系统采用开源项目(MySQLMTOP),更多相关信息可以参考:http://www.mtop.cc/

=========================================================================================

二、LAMP环境部署

=========================================================================================

三、Python基础环境部署

https://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz

# tar xvzf Python-2.7.6.tgz

# cd Python-2.7.6

# ./configure --prefix=/usr/local/python2.7 --enable-shared

# make && make install

# echo '/usr/local/python2.7/lib' >> /etc/ld.so.conf

# /sbin/ldconfig

# mv /usr/bin/python /usr/bin/python_old

# ln -s /usr/local/python2.7/bin/python2.7 /usr/bin/python

为避免 python 版本过高,导致 yum 不可以,需做如下修改:

# vim /usr/bin/yum

由  #!/usr/bin/python  修改为  #!/usr/bin/python_old

-----------------------------------------------------------------------------------------------------------------------------------------------

http://pypi.python.org/packages/source/d/distribute/distribute-0.6.28.tar.gz

# tar xvzf distribute-0.6.28.tar.gz

# cd distribute-0.6.28

# python setup.py install

-----------------------------------------------------------------------------------------------------------------------------------------------

https://github.com/farcepest/MySQLdb1/archive/MySQLdb-1.2.5.tar.gz

# tar xvzf MySQLdb1-MySQLdb-1.2.5.tar.gz

# cd MySQLdb1-MySQLdb-1.2.5

# vim site.cfg

mysql_config =/usr/local/mysql/bin/mysql_config

……

# python setup.py build

# python setup.py install

=========================================================================================

四、mysqlmtop环境部署

1、创建监控机数据库并授权

# mysql -uroot -e "create database mysqlmtop default character set utf8;"

# mysql -uroot -e "grant all privileges on mysqlmtop.* to 'mtop_user'@'%' identified by '123456';"

# mysql -uroot -e "flush privileges;"

2、导入SQL文件夹里的SQL文件(表结构和数据文件)

# unzip mysqlmtop_v2.1.zip

# cd mysqlmtop_v2.1

# mysql -uroot mysqlmtop < sql/mysqlmtop.sql

# mysql -uroot mysqlmtop < sql/mysqlmtop_data.sql

3、在被监控机上创建授权账号

# mysql -uroot -e "grant select,super,process on *.* to 'monitor'@'172.18.35.29' identified by 'monitor';"

# mysql -uroot -e "flush privileges;"

4mysqlmtop配置

# cp -a mysqlmtop /usr/local/

# cp -a frontweb /data/web/data/

# cd /usr/local/mysqlmtop/

# vim etc/config.ini

# chmod +x *.py *.sh mtopctl

# ln -s /usr/local/mysqlmtop/mtopctl /usr/local/bin

( 注意:需要使用dos2unix命令进行格式转换,否则会运行失败 )

5、测试MySQL连接是否正常

# cd /usr/local/mysqlmtop && ./test_mysql.py

MySQLDB OK!

6、启动监控系统

# mtopctl start

7、前端WEB展示层配置

# cd /data/web/data/frontweb/

# chown -R nobody:nogroup /data/web/data/frontweb

# chmod -R 750 /data/web/data/frontweb

# vim application/config/database.php

# vim /data/web/conf/mysqlmtop.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<VirtualHost*:80>
DocumentRoot /data/web/data/frontweb
ServerName mysqlmtop.test.com
DirectoryIndex index.php
AddDefaultCharset UTF-8
 
<LocationMatch"/data/web/.*\.php$">
Order Deny,Allow
Deny from All
</LocationMatch>
 
<Directory/>
AllowOverride ALL
</Directory>
</VirtualHost>

# service httpd graceful

然后本地hosts绑定(172.18.35.29  mysqlmtop.test.com)

通过 http://mysqlmtop.test.com  即可访问(初始授权账号:admin  admin)

8、监控项设置

点击管理中心 --> 应用管理 添加应用

点击管理中心 --> 服务器管理 添加 MySQL 服务器

=========================================================================================

五、效果展示

=========================================================================================

六、后续跟进的事情

1、在原有的基础,增加一些新功能;

2、是否可以将 Cacti + percona-monitoring-plugins 与其进行整合。

使用MySQLMTOP监控MySQL性能(一)的更多相关文章

  1. 使用MySQLMTOP监控MySQL性能(二)

    一.服务器角色 服务器角色 172.18.35.29 10.160.22.14 (MySQL Master) 10.160.22.47 (MySQL Slave) 监控点 YES NO NO 被监控点 ...

  2. 使用MySQLMTOP监控MySQL性能

    一.服务器角色 服务器角色 172.18.35.29 10.160.22.14 (MySQL Master) 10.160.22.47 (MySQL Slave) 监控点 YES NO NO 被监控点 ...

  3. 分布式数据存储 - Zabbix监控MySQL性能

    Zabbix如何监控mysql性能,我们可以使用mysql自带的模板,可以监控如下内容:OPS(增删改查).mysql请求流量带宽,mysql响应流量带宽,最后会附上相应的监控图! 编写check_m ...

  4. zabbix监控mysql性能

    使用zabbix监控mysql的三种方式 1.只是安装agent 2.启用模板监控 3.启用自定义脚本的模板监控 zabbix中默认有mysql的监控模板.默认已经在zabbix2.2及以上的版本中. ...

  5. mytop安装,使用mytop监控MySQL性能

    本文主要描述mytop安装,安装过程中可能出现的报错,以及使用mytop监控MySQL性能. 欢迎转载,请注明作者.出处. 作者:张正 blog:http://space.itpub.net/2635 ...

  6. spotlight监控mysql性能

    spotlight可以监控mysql性能,同监控linux一样配置 目录 1.安装spotlight 2.参数认识 1.安装spotlight spotlight不仅仅只是监控mysql,还可以完成数 ...

  7. LR如何利用siteScope监控MySQL性能

    本次实验,是在自己的电脑上使用APMServ5.2.6部署Discuz2.X论坛下,对该论坛的数据库MySQL5.1进行性能测试的,下面讲述LoadRunner在设计场景时,如何利用siteScope ...

  8. Grafana+Prometheus监控mysql性能

    #cmd /usr/local 今天讲一下如何监控服务器中的mysql数据库的性能 一.数据库操作 1.mysql启动 #service mysqld start #启动数据库 #service my ...

  9. ZABBIX 3.0 配置监控MYSQL性能【OK】

    Zabbix3.0自带了MySQL插件来监控mysql数据库的模板,只需要配置好agent客户端,然后在web端给主机增加模板就行了. 参考:http://www.cnblogs.com/keving ...

随机推荐

  1. 创建ajax对象并兼容多个浏览器方法简单记录

    这篇文章主要介绍了如何创建ajax对象并兼容多个浏览器,需要的朋友可以参考下<script> function createAjax(){ var request=false; //win ...

  2. C++(1)C++类四个默认函数---构造函数、析构函数、拷贝函数、赋值函数

    C++构造函数和析构函数 默认构造函数指不带参数或者所有参数都有缺省值的构造函数!!! (1)构造函数.析构函数与赋值函数 构造函数.析构函数与赋值函数是每个类最基本的函数.它们太普通以致让人容易麻痹 ...

  3. Namenode HA原理详解

    社区hadoop2.2.0 release版本开始支持NameNode的HA,本文将详细描述NameNode HA内部的设计与实现. 为什么要Namenode HA? 1. NameNode High ...

  4. Hbase建模

    转自:http://blog.itpub.net/28912557/viewspace-1119865/ 什么情况下使用Hbase?1,成熟的数据分析主题,查询模式已经确定并且不易轻易改变.(主要还是 ...

  5. TensorFlow基础笔记(11) conv2D函数

    #链接:http://www.jianshu.com/p/a70c1d931395 import tensorflow as tf import tensorflow.contrib.slim as ...

  6. REFLECTOR和FILEDISASSEMBLER的下载与使用

    .NET Reflector 下载地址 http://www.aisto.com/roeder/dotnet FileDisassembler 下载地址 http://www.denisbauer.c ...

  7. IOS内购支付server验证模式

    IOS 内购支付两种模式: 内置模式 server模式 内置模式的流程: app从app store 获取产品信息 用户选择须要购买的产品 app发送支付请求到app store app store ...

  8. 小知识(class文件查看jdk版本,beyond,could not find setter)

    最近几天工作当中遇到了一些问题,所以记录下来. 1.如何查看class文件的sdk版本 2.beyond compare比对文件 3.Could not find setter for native_ ...

  9. web api post/put空值问题以及和angular的冲突的解决

    先看web api自己的问题 即便你新建一个项目,也会看到示例的values控制器有两个接受[FromBody]String参数的put和post方法,请求的时候发现不能从request里面得到想要的 ...

  10. Loadrunner进行md5加密方法

    本文主要介绍使用Loadrunner进行字符串md5加密的方法. 使用Loadrunner进行md5比较简单,首先是加载md5.h头文件,后使用头文件中的加密函数即可. 1. md5.h头文件内容如下 ...