千家信息网

Lepus3.8-天兔mysql数据库监控系统搭建

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,Lepus3.8-天兔mysql数据库监控系统搭建lepus是一款开源的数据库监控软件,能详细的监控各种数据库状态,如mysql慢查询和主从状况。这是web监控页面:搭建(文中是CentOS 6.7系
千家信息网最后更新 2026年11月02日Lepus3.8-天兔mysql数据库监控系统搭建

Lepus3.8-天兔mysql数据库监控系统搭建

lepus是一款开源的数据库监控软件,能详细的监控各种数据库状态,如mysql慢查询和主从状况。

这是web监控页面:

搭建(文中是CentOS 6.7系统环境):

一、安装lamp或lnmp环境:

安装方法很多,有源码包、yum、rpm等安装,这儿就简单的提一下简单的yum安装方法。

需要安装的包:

httpd

httpd-manual

httpd-devel

php

php-mysql

mysql

mysql-server

可以yum安装上面的包:yum install httpd httpd-manual httpd-devel php php-mysql mysql mysql-server -y


1).mysql

[root@jk ~]# yum install mysqlmysql-server -y

[root@jk ~]# rpm -qa |grepmysql


[root@jk ~]# service mysqld start

[root@jk ~]# netstat -anplt|grep mysql 查看mysqld端口是否正常开启,服务是否正常


2).apache

[root@monitoring-45 lepus]# yuminstall httpd httpd-manual httpd-devel -y

[root@monitoring-45lepus]# rpm -qa |grep http*

[root@jk ~]# service httpd start

上面的:httpd: Could not reliably determine the server's fully qualifieddomain name提示 是apache启动时会验证ServerName的配置,可通过修改hosts文件添加本地解析或者修改httpd.conf 的276行将#ServerName www.example.com:80改为ServerName "主机名"来使其不提醒。

[root@jk ~]# netstat -anplt | grep httpd 查看mysqld端口是否正常开启,服务是否正常


3).php

[root@jk ~]# yum install phpphp-mysql -y

[root@monitoring-45lepus]# rpm -qa |grep php-5


[root@jk ~]# rpm -ql php 查看php相关文件

/etc/httpd/conf.d/php.conf

/usr/lib64/httpd/modules/libphp5.so

/var/lib/php/session

/var/www/icons/php.gif



4).配置apache,让apache支持php

[root@jk ~]# vim/etc/httpd/conf.d/php.conf 配置php配置文件

看是否有动态加载,图下面红框内的是apache支持的首页面

[root@jk ~]# vim/etc/httpd/conf/httpd.conf 配置apache配置文件

AddType applition/x-httpd-php.php #添加这一行

DirectoryIndex index.html index.php #添加index.php是为了让apache识别php首页

重启apache

[root@jk ~]# touch/var/www/html/1.php

[root@jk ~]# vim /var/www/html/1.php

phpinfo();

?>

浏览器打开http://服务端ip/1.php,出现如下图则表示配置成功:


5).让php支持mysql

[root@jk ~]# yum install -y php-mysql

检查:

[root@jk ~]# vim /var/www/html/1.php

$link=mysql_connect('127.0.0.1','root','');

if($link)

echo "connect success!";

else

echo 'connect faild!';

?>

重启apache,service httpd restart后

浏览器打开http://服务端ip/1.php,出现

connect success!

则为成功


6).设置服务自启:

[root@jk ~]# chkconfig httpd on

[root@jk ~]# chkconfig httpd--list

httpd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭

[root@jk ~]# chkconfig mysqld on



二、监控端安装python(文中是2.6.6版本,也推荐使用2.7版本)

……


三、监控端安装数据库连接Python的驱动包

1).安装 MySQLdb for python (如果需要监控MySQL则必须安装)

MySQLdb为Python连接和操作MySQL的类库,如果准备使用lepus系统监控MySQL数据库,那么该模块必须安装。

[root@jk ~]# wget http://cdn.lepus.cc/cdncache/software/MySQLdb-python.zip
[root@jk ~]# unzip MySQLdb-python.zip
[root@jk ~]# cd MySQLdb1-master/
[root@jk ~]# which mysql_config
/usr/local/mysql/bin/mysql_config


[root@jk ~]# vim site.cfg 修改如下:
mysql_config = /usr/local/mysql/bin/mysql_config


[root@jk ~]# python setup.py build
[root@jk ~]# python setup.py install


如果编译python出现如下问题
/usr/bin/ld: cannot find -lpython2.7
collect2: ld returned 1 exit status
error: command 'gcc' failed with exit status1
请按如下步骤处理:
A.检查并安装python-devel包
[root@jk ~]# yum -y install python-devel


B.将libpython2.7.so库文件建立软连接到/usr/lib下
32位服务器下执行:
[root@jk ~]# ln -s /usr/local/Python2.7/lib/libpython2.7.so/usr/lib/libpython2.7.so
64位服务器下执行:
[root@jk ~]# ln -s /usr/local/Python2.7/lib/libpython2.7.so/usr/lib64/libpython2.7.so


C.检查下/etc/ld.so.conf是否包含/usr/local/Python2.7/lib
[root@jk ~]# vi /etc/ld.so.conf 添加/usr/local/Python2.7/lib
[root@jk ~]# /sbin/ldconfig


2).安装cx_oracle for python (如果需要监控Oracle则必须安装,本文暂未用到)

下载安装oracle instant client:
http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
如果是64位的,请选择.*x86_64.rpm,否则是.*i386.rpm
如果是oracle 9i或更高,请选择InstantClient 11,如果是8或8i,请选择Instant Client 10


[root@jk ~]# rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
[root@jk ~]# rpm -ivh oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm
[root@jk ~]# rpm -ivh oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm
[root@jk ~]# vim /root/.bash_profile

ORACLE_HOME="/usr/lib/oracle/11.2/client64"
PATH=$PATH:$ORACLE_HOME/bin
export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH


[root@jk ~]#vim /etc/ld.so.conf 加入
/usr/lib/oracle/11.2/client64/lib


执行ldconfig生效
[root@jk ~]# ldconfig

安装cx_oracle

[root@jk ~]# wget http://cdn.lepus.cc/cdncache/software/cx_Oracle-5.1.2.tar.gz
[root@jk ~]# tar -xvf cx_Oracle-5.1.2.tar.gz
[root@jk ~]# cd cx_Oracle-5.1.2
[root@jk ~]# python setup.py build
[root@jk ~]# python setup.py install

3).安装Pymongo for python (如果需要监控Mongodb则必须安装)
pymongo为Python连接和操作MongoDB的类库,如果准备使用lepus系统监控MongoDBs数据库,那么该模块必须安装。
安装步骤如下:
下载pymongo https://pypi.python.org/packages/source/p/pymongo/
[root@jk ~]# wget http://cdn.lepus.cc/cdncache/software/pymongo-2.7.tar.gz
[root@jk ~]# tar -xvf pymongo-2.7.tar.gz
[root@jk ~]# cd pymongo-2.7
[root@jk ~]# python setup.py install

4).安装Redis 驱动 (如果需要监控Redis则必须安装)

[root@jk ~]# wget http://cdn.lepus.cc/cdncache/software/redis-py-2.10.3.tar.gz
[root@jk ~]# tar -xvf redis-py-2.10.3.tar.gz
[root@jk ~]# cd redis-2.10.3/
[root@jk ~]# python setup.py install

5).测试各个驱动是否正常运行

[root@jk~]# wget http://www.lepus.cc/soft/download/18

[root@jk~]# unzip Lepus数据库企业监控系统3.7版本官方下载.zip

[root@jk~]# cd Lepus_v3.8_beta/

[root@jk~]# python test_driver_mysql.py
MySQL python drivier is ok!
[root@jk ~]# python test_driver_oracle.py
Oracle python drivier is ok!
[root@jk ~]# python test_driver_mongodb.py
MongoDB python drivier is ok!
[root@jk ~]# python test_driver_redis.py
Redis python drivier is ok!

四、监控端安装Lepus监控系统

1).下载软件包到监控端并解压缩

(下载链接:http://down.51cto.com/data/2237019)

[root@jk~]# wget http://www.lepus.cc/soft/download/18

[root@jk~]# unzip Lepus数据库企业监控系统3.7版本官方下载.zip

[root@jk~]# cd Lepus_v3.8_beta/


2).在监控机创建监控数据库,并授权。

监控端数据库执行:

mysql>create database lepus default character set utf8;

mysql>grant select,insert,update,delete,create on lepus.* to 'lepus_user'@'localhost'identified by '111.test';

mysql>flush privileges;


3).导入Lepus_v3.8_beta 的sql文件夹里的SQL文件(表结构和数据文件)

[root@jk~]# mysql -uroot -p lepus < sql/lepus_table.sql

[root@jk~]# mysql -uroot -p lepus < sql/lepus_data.sql

4).安装Lpeus程序

[root@jk~]#pwd

[root@monitoring-45Lepus_v3.8_beta]# cd python/

[root@monitoring-45Lepus_v3.8_beta]# chmod +x install.sh

修改安装位置:

[root@monitoring-45python]# vim install.sh 下图红色标记即为安装位置

[root@monitoring-45lepus]# vim lepus 修改启动文件

执行安装

[root@monitoring-45Lepus_v3.8_beta]# ./install.sh

[note]lepus will be install on basedir: /date/server/lepus

[note]/date/server/lepus directory does not exist,will be created.

[note]/date/server/lepus directory created success.

[note]wait copy files.......

[note]change script permission.

[note]create links.

[note]install complete.

5).修改配置文件

进入到安装目录/date/server/lepus,默认为/usr/local/lepus

[root@monitoring-45 ~]# cd /date/server/lepus

[root@monitoring-45 lepus]# vim etc/config.ini

###监控机MySQL数据库连接地址###

[monitor_server]

host="localhost"

port=3306

user=" lepus_user "

passwd="111.test"

dbname="lepus"


6).启动监控系统

执行以下命令启动系统采集进程

[root@monitoring-45 lepus]#lepus start

nohup: appending output to`nohup.out'

lepus monitor start success!

执行以下命令关闭系统采集进程

[root@monitoring-45 lepus]#lepus stop

执行以下命令监控系统是否正常运行

[root@monitoring-45 lepus]#lepus status

lepus server is running...

7).将lepus_monitor脚本部署为计划任务,该脚本可以监控Lepus是否正在运行。

打开文件/data/server/lepus/lepus_monitor修改里面连接监控机的数据库连接地址,然后将该脚本部署为计划任务。

[root@monitoring-45 lepus]# crontab -e

*/5 * * * * /data/server/lepus/lepus_monitor >> /tmp/lepus_monitor.log

8)部署网页WEB界面

复制安装文件夹的php文件夹里的文件到Apache对应的网站根目录

[root@monitoring-45 lepus]# cp -rf /root/bao/Lepus_v3.8_beta/php/* /var/www/html/

打开/var/www/html/application/config/database.php文件修改PHP连接监控服务器的数据库信息

[root@monitoring-45 lepus]# vim /var/www/html/application/config/database.php

$db['default']['hostname'] ='localhost';

$db['default']['username'] ='lepus_user';

$db['default']['password'] = '111.test';

$db['default']['database'] =lepus;

$db['default']['dbdriver'] ='mysql';

9).重启apache

[root@monitoring-45 lepus]# service httpd restart


10).登录进行添加主机和监控

通过浏览器输入IP地址或域名打开监控界面,即可登录系统。默认管理员账号密码admin/Lepusadmin

登录后请修改管理员密码,增加普通账号,对需要监控的数据库授权,在WEB添加主机进行监控。

四、Lepus监控数据库配置

1).被监控端防火墙打开允许监控端ip的3306端口,mysql添加监控账号:

[root@jk ~]# iptables -A INPUT -s "监控端ip" -m state --state NEW -m tcp -p tcp--dport 3306 -j ACCEPT

被监控端数据库执行:

[root@jk ~]#

mysql> grant select,process,super on *.* to 'monitor'@'server监控端ip' identified by '222.test';


被监控端创建完帐号即可在监控端网页上添加mysql数据库监控:

稍等几分钟便可看到信息。

注意:只有同时监控主库和备库才能看到主从复制情况。


2).得不到数据库表空间分析数据的解决方法:

在lepus.py中添加check_mysql_bigtable,如图

图中"*120"是设置时间间隔,若是网页页面设置了1分钟刷新数据,这儿改成120。则最终是2小时才会监控得到新数据


五、Lepus监控数据库慢查询配置

1).监控端配置数据库帐号,让被监控端写入数据

监控端数据库执行:

mysql> grantselect,insert,update,delete,create on lepus.* to 'lepus_user'@'被监控端ip' identified by '333.test';


2).被监控端数据库添加账号允许脚本获得数据库信息

被监控端数据库执行:

mysql> grantselect,process,super on *.* to 'monitor'@'localhost' identified by '444.test';


3).被监控端要安装pt工具

[root@mysql-master-39~]# yum -y install perl-IO-Socket-SSL perl-DBI perl-DBD-MySQLperl-Time-HiRes 'perl(Time::HiRes)'


下载percona-toolkit:

[root@mysql-master-39~]# wget https://www.percona.com/downloads/percona-toolkit/2.2.6/RPM/percona-toolkit-2.2.6-1.noarch.rpm


[root@mysql-master-39~]# rpm -ivh percona-toolkit-2.2.6-1.noarch.rpm


4).将lepus安装包里的client目录里的lepus_slowquery.sh脚本拷贝到被监控端

[root@mysql-master-39~]# ls lepus_slowquery.sh

[root@mysql-master-39~]# chomd +x lepus_slowquery.sh

[root@mysql-master-39~]# which mysql

[root@mysql-master-39~]# which pt-query-digest

获取数据库id:

[root@mysql-master-39~]# vim lepus_slowquery.sh 标红部分是需要修改的

#!/bin/bash

#****************************************************************#

#ScriptName:/usr/local/sbin/lepus_slowquery.sh

#Create Date:2014-03-25 10:01

#Modify Date:2014-03-25 10:01

#***************************************************************#

#configlepusdatabase server监控机

#设置监控端帐号信息

lepus_db_host="监控端ip"

lepus_db_port=3306

lepus_db_user="lepus_user"

lepus_db_password="333.test"

lepus_db_database="lepus"

#configmysqlserver被监控机

#设置mysql命令路径和本地数据库监控帐号信息

mysql_client="/usr/local/mysql/bin/mysql"

mysql_host="localhost"

mysql_port=3306

mysql_user="monitor"

mysql_password="444.test"

#configslowqury慢日志位置,从my.cnf配置文件中获取

slowquery_dir="/data/logs/mysql/"

#设置慢查询时间是多少就被收集

slowquery_long_time=1

slowquery_file=`$mysql_client-h$mysql_host-P$mysql_port -u$mysql_user -p$mysql_password -e "show variables like'slow_query_log_file'"|grep log|awk'{print $2}'`

#设置pt-query-digest路径

pt_query_digest="/usr/bin/pt-query-digest"

#configserver_id被监控机id从lepus图形界面看

lepus_server_id=274

最后注意vi编辑设置

:set ff?

显示当前的格式,默认为dos,这时不能执行的

需要:

:set fileformat=unix

变更为unix后,脚本才可执行。

手动执行一次脚本,便可在网页页面看到数据:


5).将脚本拷贝到/usr/local/sbin/下,并添加计划任务定时执行(建议时间间隔在一小时内)

[root@mysql-master-39~]# crontab -e

*/27 * * * * sh /usr/local/sbin/lepus_slowquery.sh > /dev/null 2>&1


6).配置邮箱

配置发件人:

点击配置中心-全局设置,然后如图,注意告警收件人需要在监控项设置里另外配置。





配置收件人:



注意:发件人和收件人都要写全。

配置完成后在监控服务端的安装目录执行

[root@monitoring-45 lepus]# python test_send_mail.py

True

send_mail_status:success

报成功后就是配置完成了。


7).慢查询自动推送

定时将系统收集到的慢查询TOP数据定时推送给相应开发人员进行优化,无需在每台数据库上部署脚本。

MySQL慢查询自动推送通过计划任务完成。如果需要推送,则需要在监控机部署如下计划任务。


#crontab -e

00 09 * * * links http://111.com/index.php/task/send_mysql_slowquery_mail > /dev/null 2>&1


计划任务部署完成后,则会按照计划任务配置的时间将慢查询推送给对应人员。慢查询推送的邮件人员需要在MySQL主机配置里面设置即可,邮箱留空则该数据库主机不会发送慢查询推送。


六、Lepus监控数据库操作系统信息配置

Lepus使用的是snmp协议获取系统信息

1). snmpd 服务安装
[root@mysql-master-39~]# yum install -y net-snmp net-snmp-utils


2).修改配置文件允许指定的主机监听自己

[root@mysql-master-39~]# vim /etc/snmp/snmpd.conf

:set nu


41行 将default改为监控服务器ip;将public改成lepus_monitor

(备注: lepus_monitor是在天兔配置文件里配置的通用实体,如果配置的实体是其他名称,这里要做相应的修改)

com2secnotConfigUser 监控端ip lepus_monitor


62行 将systemview 改为all,供所有snmp访问权限

access notConfigGroup "" any noauth exact all none none


85行 将#注释符号去掉

view all included .1 80


3).修改snmpd 日志级别
snmpd 默认日志级别将会在/var/log/message 写入大量snmp 信息,这样会影响我们察看系统日志,所以我们需要更改下配置文件:
注释原有的OPTINOS,添加下面的一行,重启snmpd 服务即可

[root@mysql-master-39~]# vim /etc/init.d/snmpd
#OPTIONS="-Lsd -Lf /dev/null -p /var/run/snmpd.pid -a"
OPTIONS="-LS 4 d -p /var/run/snmpd.pid -a"


4).启动 snmpd 服务
[root@mysql-master-39~]# /etc/init.d/snmpd start

5).验证snmpd 服务
snmpd 使用tcp/udp161 端口


[root@mysql-master-39~]# grep 'Simple Net Mgmt Proto' /etc/services
snmp 161/tcp # Simple Net Mgmt Proto
snmp 161/udp # Simple Net Mgmt Proto

[root@mysql-master-39~]# lsof -i :161

6).将SNMP服务设置开机启动

注意设置防火墙,允许监控端连接被监控端的tcp/udp161端口


7).在监控端使用snmpwalk 命令验证,在监控端上执行以下命令
snmpwalk -v 1 -c lepus_monitor 被监控端ip
-v是指版本,-c 是指密钥,获取到系统信息则正常!


安装完成后在lepus网页配置中心-操作系统栏目配置操作系统信息,SNMP团体名填写刚才的密钥:lepus_monitor。


稍等几分钟,或在服务端lepus安装目录执行python lepus.py 片刻看到数据




参考:

http://www.lepus.cc/post/65

http://suifu.blog.51cto.com/9167728/1770672

监控 数据 数据库 配置 系统 文件 服务 信息 脚本 查询 任务 监控系统 主机 命令 版本 端口 网页 推送 日志 时间 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网与科技 互联网黑科技 南京欣网互联网络科技 互联网科技公司简介 互联网品科技 金融科技创新监管互联网金融 互联网科技排名 世界互联网领先科技成果 互联网 新科技 多迪互联网科技有限公司 海南购全球互联网科技 互联网巨头投资的硬核科技 温州喔噻互联网科技有限公司 国大互联网教育科技有限公司工作 张召忠谈中国互联网科技 安徽零酒互联网科技有限公司 互联网科技创新方面的资料 恒生科技互联网指数十大成分股 山东亿川互联网科技有限责任公司 小牛互联网科技有限公司地址 电子科技大学互联网 深圳国际航运科技和互联网 阿大互联网科技有限公司 玉溪新华互联网科技好不好 深圳互联网科技的发展 互联网科技接地气 互联网科技手机排行榜 互联网时代高科技布局 保山浩联互联网科技有限公司 互联网企业和网络科技有限公司
0