一、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
[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 database 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/database.php
$db['default']['hostname']= '数据库IP';
$db['default']['port'] = '3306';
$db['default']['username']= 'lepus_user';
$db['default']['password']= '密码';
$db['default']['database']= 'lepus';
$db['default']['dbdriver']= 'mysql';
重启xampp
/opt/lampp/lampp restart
启动lepus
lepus start
访问http://lepus搭建IP/lepus (记得关防火墙或者设置防火墙策略),默认账号密码admin/Lepusadmin
四、监控mysql
1.添加mysql
FAQ1
Q:
添加mysql后出现问题,查看nohup.out,发现如下错误:
Expression #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;
FAQ3
Q:
在虚拟机上运行xamp时,通过本机访问虚拟机的xamp服务出现如下的错误提示
New XAMPP security concept:
Access to the requested object is only available from the local network. This setting can be configured in the file "httpd-xampp.conf".
A:
使用vim编辑配置文件
vim /opt/lampp/etc/extra/httpd-xampp.conf
在文件末尾
#Require local <---将这个注释掉,取消只允许本地访问
重启xammp服务
/opt/lampp/lampp restart
可以实现远程访问了
参考安装连接:
天兔(Lepus)监控系统快速安装部署 - 贺磊的技术博客 - CSDN博客
lepus天兔数据库监控系统搭建记录 - 简书
MySQL监控系统Lepus的搭建 - GoogSQL - 博客园
Lepus官网