一、lepus简介
简洁、直观、强大的开源数据库监控系统,MySQL/Oracle/MongoDB/Redis一站式性能监控,让数据库监控更简单。官网:http://www.lepus.cc/

二、lepus3.7搭建

数据库和lepus分别按在两台机器上

个人操作系统
         RedHat7.3 64位

依赖软件
     1.MySQL 5.0及以上(必须,用来存储监控系统采集的数据)
     2.Apache 2.2及以上 (必须,WEB服务器运行服务器)
     3.PHP 5.3以上 (必须,提供WEB界面支持)
     4.Python2 (必须,推荐2.6及以上版本,执行数据采集和报警任务,不支持Python3)
     5.Python连接和监控数据库的相关驱动模块包:
          MySQLdb for python (Python连接MySQl的接口,用于监控MySQL,此模块必须安装)
          cx_oracle for python (Python连接Oracle的接口,非必须,如果需要监控oracle此模块必须安装)
          Pymongo for python (Python连接MongoDB的接口,非必须,如果需要监控MongoDB此模块必须安装 )
          redis-py for python (Python连接Redis的接口,非必须,如果需要监控Redis此模块必须安装)

三、安装步骤
1.xampp安装
Xampp下载地址:xampp-linux-x64-1.8.2-5-installer-CSDN下载

注意你的版本号,高版本的XAMPP中可能不是Mysql而是MariaDB
[root@HE3home]# chmod +x xampp-linux-x64-1.8.2-5-installer.run

[root@HE3home]# ./xampp-linux-x64-1.8.2-5-installer.run

[root@HE3home]# /opt/lampp/lampp start

[root@HE3 home]#vi /etc/profile追加环境变量

export PATH=$PATH:/opt/lampp/bin/

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/lampp/lib

[root@HE3home]#source /etc/profile

2.安装数据库python驱动

mysql-python驱动下载地址:[MySQL-python · PyPI](https://pypi.org/project/MySQL-python/1.2.5/#files)
[root@HE3 home]#unzip MySQL-python-1.2.5.zip

[root@HE3 home]# cd MySQL-python-1.2.5/

[root@HE3MySQL-python-1.2.5]# which mysql_config

/opt/lampp/bin/mysql_config

[root@HE3MySQL-python-1.2.5]# vi site.cfg

mysql_config= /opt/lampp/bin/mysql_config

[root@HE3~]#yum install gcc libffi-devel python-devel openssl-devel

[root@HE3~]# yum install urpmi xterm

[root@HE3MySQL-python-1.2.5]# python setup.py build

[root@HE3MySQL-python-1.2.5]# python setup.py install

3.lepus安装采集器(lepus官网下载)

[root@HE3 home]#unzip lepus3.7.zip

进入数据库

创建lepus监控库

mysql> create data  lepus default character set utf8;

创建lepus_user用户,并赋予对lepus库操作权限

mysql>grant select,insert,update,delete,create on lepus.* to \'lepus_user\'@\'%\' identified by \'密码\';

生效权限

mysql> flush privileges;

给lepus库导入初始化数据:

[root@HE3lepus_v3.7]# mysql -uroot -p lepus < sql/lepus_table.sql

[root@HE3lepus_v3.7]# mysql -uroot -p lepus < sql/lepus_data.sql

FAQ
Q:

 mysql: [Warning] Using a password on the command line interface can be insecure.

 ERROR 1067 (42000) at line 698: Invalid default value for \'ts_min\'

A:

 vim /usr/local/lepus_v3.7/sql/lepus_table.sql

将原有’0000-00-00’修改为’1000-01-01’

 `ts_min` datetime NOT NULL DEFAULT \'1000-01-01 00:00:00\',
 `ts_max` datetime NOT NULL DEFAULT \'1000-01-01 00:00:00\',
 `ts_cnt` float DEFAULT NULL,

4.安装lepus程序

切换到安装包python目录下执行安装
[root@HE3lepus_v3.7]# cd python/

[root@HE3 python]# chmod +x install.sh

[root@HE3 python]# ./install.sh

[root@HE3 python]# vi /usr/local/lepus/etc/config.ini

[monitor_server]
host=\"数据库IP\"
port=3306
user=\"lepus_user\"
passwd=\"密码\"
dbname=\"lepus\"

[root@HE3lepus_v3.7]# cd /usr/local/lepus/

[root@HE3 lepus]#lepus start

nohup: appendingoutput to \'nohup.out\'
lepus server startsuccess!

查看启动日志:

tail -f /usr/local/lepus/nohup.out

5.安装WEB管理台

[root@HE3lepus_v3.7]# cp -rf php/* /var/www/html/

[root@HE3lepus_v3.7]# vi /var/www/html/application/config/data .php

$db[\'default\'][\'hostname\']= \'数据库IP\';
$db[\'default\'][\'port\']     = \'3306\';
$db[\'default\'][\'username\']= \'lepus_user\';
$db[\'default\'][\'password\']= \'密码\';
$db[\'default\'][\'data \']= \'lepus\';
$db[\'default\'][\'dbdriver\']= \'mysql\';

重启xampp

/opt/lampp/lampp restart

启动lepus

lepus start

访问http://lepus搭建IP/lepus (记得关防火墙或者设置防火墙策略),默认账号密码admin/Lepusadmin

四、监控mysql
1.添加mysql
\"webp\"

\"webp\"

FAQ1
Q:

 添加mysql后出现问题,查看nohup.out,发现如下错误:
 
   #3 of SELECT list is not in GROUP BY clause and contains nonaggregated column \'userinfo.t_long.user_name\' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

A:

原因:
mysql> select @@sql_mode;

可见session和global 的sql_mode的值都为: 
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

only_full_group_by说明: 
only_full_group_by :使用这个就是使用和oracle一样的group 规则, select的列都要在group中,或者本身是聚合列(SUM,AVG,MAX,MIN) 才行,其实这个配置目前个人感觉和distinct差不多的,所以去掉就好 

解决:
执行以下两条命令:
mysql> set global sql_mode=\'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION\';
mysql> set session sql_mode=\'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION\';

FAQ2
Q:

 添加mysql后出现问题,查看nohup.out,发现如下错误:
 
 check mysql IP地址:3306 failure: 1227 Access denied; you need (at least one of) the SUPER, REPLICATION CLIENT privilege(s) for this operation

A:

解决:
执行以下两条命令,给lepus_user赋SUPER和REPLICATION:

grant SUPER ON *.* TO lepus_user;
grant REPLICATION CLIENT ON *.* TO lepus_user;

参考安装连接:
天兔(Lepus)监控系统快速安装部署 - 贺磊的技术博客 - CSDN博客
lepus天兔数据库监控系统搭建记录 - 简书
MySQL监控系统Lepus的搭建 - GoogSQL - 博客园
Lepus官网

收藏 打印