澳门新浦京娱乐场网站-www.146.net-新浦京娱乐场官网
做最好的网站

澳门新浦京娱乐场网站:Cacti安装配置,digest的搭

 

转发请必须保留超链接 :原来的小说链接 

Cacti是龙精虎猛套开源的互连网监察和控制工具,能够监控Linux主机的场馆和负载景况,加多相应的模板后,能够用来监察和控制apache服务器和mysql服务器的周转状态,作者设置这么些主借使为着监察和控制mysql服务器的运行状态的。
cacti的网站:) 5.5
革新日期:20080717
mysql: mysql-5.0.77-4.el5_5.3
php:    php-5.1.6-27.el5
apache: httpd-2.2.3-43.el5.centoscacti设置时会须求某些组件,譬如snmp, php-xml,php-ldap(可选),
那一个倒不用太操心,因为安装LAMP情形的时候有一点也装了部分,尽管未有,请使用yum命令,作者深感centos的那个照旧非常好的,尽管软件一时有一些老了,然则仍是可以用的。手动把snmp的相干程序装下,不然最终第叁次配置的时候会找不到部分snmpwalk,snmpget什么的
[root@tigertall bin]# rpm -qa|grep snmp
php-snmp-5.1.6-27.el5
net-snmp-utils-5.3.2.2-9.el5_5.1
net-snmp-5.3.2.2-9.el5_5.1
net-snmp-devel-5.3.2.2-9.el5_5.1
net-snmp-libs-5.3.2.2-9.el5_5.1
[root@tigertall bin]#
假定上述组件有缺点和失误,请使用yum本人安装下。使用yum安装 cacti
[gaohu@tigertall ~]$ sudo yum install cacti这么些命令会自行安装相关的零件。
1.php配置供给[gaohu@tigertall ~]$ php -m
以此命令可以检查php安装了什么模块。供给php扩张协理中早已计划了mysql.so,centos yum私下认可景况下httpd的conf文件配置在  /etc/httpd/conf/httpd.conf
暗中认可的加载项(php,mysql)配置目录 /etc/httpd/conf.d。[root@tigertall conf.d]# ls
bugzilla.conf  manual.conf  php.conf        
proxy_ajp.conf  README      ssl.conf       
welcome.conf cacti.conf     perl.conf   
phpMyAdmin.conf  python.conf    
squid.conf  webalizer.conf
[root@tigertall conf.d]# 能够看看,比较多web相关的布置都在那间。php的基础配置在 /etc/php.ini。
[root@tigertall conf.d]# cd /etc/php.d
[root@tigertall php.d]# ls
dbase.ini         gd.ini        mcrypt.ini  mysql.ini   
pdo_mysql.ini   pgsql.ini      xmlwriter.ini
dom.ini           ldap.ini      mhash.ini  
ncurses.ini  pdo_pgsql.ini   snmp.ini       xsl.ini
eaccelerator.ini  mbstring.ini  mysqli.ini 
pdo.ini      pdo_sqlite.ini  xmlreader.ini
[root@tigertall php.d]#
php.d目录下设置了部分php扩充组件的布署。查看mysql.ini,启用extension=mysql.so查看snmp.in,启用extension=snmp.so
假定要启用导入模板的效力,还要启用文件上传,在/etc/php.ini中启用file_uloads=on;注释以下,若无注释session.save_path = /tmp;
 2.apache安排须求 在apache配置/etc/httpd/conf.d/php.conf中,
检查一下语句是还是不是启用,平日意况下,
应该是曾经暗中同意启用了的。
# PHP is an HTML-embedded scripting language which
# attempts to make it
# easy for developers to write dynamically
# generated webpages.
LoadModule php5_module modules/libphp5.so
#
# Cause the PHP interpreter to handle files
# with a .php extension.
AddHandler php5-script .php
AddType text/html .php
#
# Add index.php to the list of files that
# will be served as directory
# indexes.
DirectoryIndex index.php

 BoxAnemometer是二个十三分正确的MySQL慢查询可视化学工业具平台,具体就不多详述了,官方网站是

前言:

干什么写那篇文章?

由来如下:

1、Anemometer是个好东西。

2、希望各位同行在率先次安装和采取Anemometer的时候少走坑。

3.mysql配置需要请记得给root设置二个诡秘,以爱惜自身安全,呵呵。能够行使如下的一声令下来改动root的密码:
mysqladmin --user=root password somepassword
mysqladmin --user=root --password reload

眼前动本人出手搭了一个,具体搭建过程,参谋了以致官网的验证文书档案

简介:

Anemometer是MySQL慢速查询监视器。此工具用于剖判从MySQL实例搜罗的慢速查询日志,在Web分界面可以直观查看MySQL日志,便于查询和分析慢SQL语句,起到了优化数据库的功用。

官网:https://github.com/box/Anemometer

在Centos7_61位系统下的设置

一: 通过yum 安装 Nginx/1.12.2

1、先安装Nginx的信赖包

yum install -y pcre pcre-devel

yum install -y zlib zlib-devel

yum install -y openssl openssl-devel

2、初叶设置Nginx

下载安装包

wget

安装Nginx库

rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm

安装Nginx

yum install nginx

启动Nginx服务

service nginx start

查看Nginx状态

service nginx status

查看Nginx版本

nginx -v

二:编写翻译安装PHP7.1.0

1、安装epel-release

rpm -ivh

2、下载PHP7.1.0

wget

3、解压PHP7.1.0

tar -xvf php-7.1.0.tar.gz

4、进入PHP目录

cd php-7.1.0

5、安装注重包

yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel

6、编写翻译暗许配置

./configure

7、正式安装

make && make install

8、配置环境变量

vim /etc/profile, 在PATH最终边丰硕":/usr/local/php/bin"

export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin:/usr/local/php/bin

source /etc/profile

9、配置php-fpm

cp php.ini-production /etc/php.ini

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf

cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

chmod x /etc/init.d/php-fpm

10、启动php-fpm

/etc/init.d/php-fpm start

三:数据库版本为MySQL5.7.19,安装进度轻巧,MySQL的装置对DBA来讲轻易就是So easy。

四:安装和选择Anemometer

1、下载和安装percona toolkit包

yum install –y perl-DBD-MySQL.x86_64

wget

yum -y install  percona-toolkit-3.0.4-1.el7.x86_64.rpm

pt-query-digest --version

2、切换来Nginx web服务器默许目录

cd /usr/share/nginx/html

3、从官方网站下载压缩包

git clone git://github.com/box/Anemometer.git anemometer

4、创造存款和储蓄慢查询音讯供给的数据库(slow_query_log)和数据表(global_query_review、global_query_review_history)

cd anemometer

mysql < ./install.sql

5、慢查询数据载入数据库中

先给顾客授权:

mysql > grant all privileges on *.* to 'anemometer'@'%' identified by '123456abc';

mysql > grant all privileges on *.* to 'anemometer_explain'@'%' identified by '123456abc';

注 : 创建'anemometer_explain'@'%' 顾客的目标是用来 查询推行布署的时候使用,不然后边plugins 标签的不能够采取导致 查询 慢SQL的explain 失利。

推行pt-query-digest 参数, 将慢查询日志中的音讯导入数据表中:

pt-query-digest --user=anemometer --password=123456abc --review h=192.168.1.23,D=slow_query_log,t=global_query_review --history h=192.168.1.23,D=slow_query_log,t=global_query_review_history --no-report --limit=0% --filter=" $event->{Bytes} = length($event->{arg}) and $event->{hostname}="$HOSTNAME"" /data/mysql/mysql3306/data/slow.log

备注: "D"表示数据库、"t"表示表名(运转 mysql < ./install.sql 自动成立该数据库和数据表)、 "/data/mysql/mysql3306/data/slow.log" 表慢查询日志的路线

6、访谈站点现身"Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'slow_query_log.dimension.sample' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by (1055)"

澳门新浦京娱乐场网站 1

化解办法: 供给将sql_mode 中only_full_group_by 关闭, 编辑数据库配置文件, 增多以下内容

sql_mode=STRICT_澳门新浦京娱乐场网站:Cacti安装配置,digest的搭建和使用。TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

OK,难点化解.

澳门新浦京娱乐场网站 2

澳门新浦京娱乐场网站:Cacti安装配置,digest的搭建和使用。7、查看SQL试行安插, 建表语句和对慢查询SQL发布本身的Review等等.

要求配置 config.inc.php 文件, 增加客商名和密码

$conf['plugins'] = array(

  ...

  'explain'       =>      function ($sample) {

  $conn['user'] = 'anemometer';

  $conn['password'] = '123456abc';

   return $conn;

},

);

接下去就足以查看explain 实践安顿了,如下图

澳门新浦京娱乐场网站 3

8:创造机关搜聚慢日志脚本

在 anemometer项目目录下的scripts/anemometer_collect.sh会集脚本,能够经过crontab举办按期收罗慢日志, 上边讲授有关布置:

scripts/anemometer_collect.sh 脚本的安排如下:

澳门新浦京娱乐场网站 4

local.cnf 和 server.cnf 文件的布局如下:

[client]

user=anemometer

password=123456abc

能够先手动调治看看剧本能或不可能健康执行搜罗慢查询记录, cd /usr/share/nginx/html/anemometer/scripts 到脚本目录下, 施行以下命令

bash -x anemometer_collect.sh --interval 30 --history-db-host 192.168.1.23

接下去配置crontab布置职责张开按时搜聚慢日志, 施行命令 crontab -e, 然后增加要奉行的台本和效能

*/2 * * * * sh /usr/share/nginx/html/anemometer/scripts/anemometer_collect.sh --interval 30 --history-db-host 192.168.1.23 >> /tmp/log/anemometer.log

再者还要监察和控制 crontab 布署义务是还是不是正常实行, 实行命令:

 tail -f /var/log/cron

补充:

1、搭建Anemometer站点在Nginx的nginx.conf配置如下

澳门新浦京娱乐场网站 5

计算:   Anemometer是一个杰出好的 监察和控制数据库慢查询 可视化学工业具, 源码是纯PHP脚本编写. 

4.cacti设置配备1.行使如下命令来安装cacti,那些会自行安装要求的机件。
[root@tigertall php.d]# yum install cacti

上边把里面境遇的一些坑记录于此:

2.创建mysql数据库
[root@tigertall php.d]# mysqladmin -uroot -phandomse create cacti

1、.财富规划:

3.导入暗许的cacti数据库
设若使用yum暗许安装,创立数据库的剧本
默认在/usr/share/doc/cacti-0.8.7f/cacti.sql
[root@tigertall php.d]# cd /usr/share/doc/cacti-0.8.7f/
实行创设数据库的一声令下
[root@tigertall 0.8.7.f]# mysql -uroot -phandomse cacti < cacti.sql

192.168.17.205  BoxAnemometer服务器,安装httpd服务、php、用于存款和储蓄Anemometer慢查询数据的MySQL服务。

4.创办cacti数据库的客商和密码,
签到到数据库
[root@tigertall 0.8.7.f]# mysql -u root -p 'pass'
顾客授权,请把客商名,数据库和密码换来本人索要的装置。
mysql> GRANT ALL ON cacti.* TO cactiuser@localhost
--> IDENTIFIED BY 'password';
刷新权限
mysql> flush privileges;

192.168.16.21/22/23/24/25/**** 必要被监督的MySQL服务器,须求设置percona-toolkit,并配置使用pt-query-digest搜集数据的连带脚本职分。

5.编辑cacti配置,做多少连接装置
[root@tigertall include]# vi /usr/share/cacti/include/config.php
那边有cacti连接使用的数据库类型,顾客名,密码音信

2、安装进度及蒙受的坑:2.1、以前192.168.17.205上就编译安装过三个MySQL5.7.20服务

/* make sure these values refect */
/* your actual database/host/user/password */
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "cactiuser";
$database_port = "3306";

于是乎遵照互连网的教程先yum 安装了httpd,再yum安装php,然后配置Anemometer。

/* Default session name

结果从来报错,连接不上MySQL服务器。笔者出乎意料是yum安装php暗中同意的Mysql客商端驱动太低形成的。所以重复行使编写翻译安装php,编写翻译配置如下:

  • Session name must */
./configure 
--prefix=/data/php 
--enable-fpm 
--with-fpm-user=daemon 
--with-fpm-group=daemon 
--with-config-file-path=/usr/local/php/etc 
--with-mysql=mysqlnd 
--with-mysqli=mysqlnd 
--with-pdo-mysql=mysqlnd 
--with-iconv --with-iconv-dir 
--with-freetype-dir 
--with-jpeg-dir 
--with-png-dir 
--with-gd 
--with-zlib 
--with-libxml-dir 
--with-curl 
--with-mhash 
--with-xmlrpc 
--with-mcrypt 
--with-openssl 
--with-apxs2=/usr/sbin/apxs 
--enable-xml 
--disable-rpath 
--enable-bcmath 
--enable-shmop 
--enable-sysvsem 
--enable-inline-optimization 
--enable-mbregex 
--enable-mbstring 
--enable-gd-native-ttf 
--enable-ftp 
--enable-pcntl 
--enable-sockets 
--enable-zip 
--enable-soap 
--disable-debug 
--disable-ipv6 
--with-gettext 
--enable-calendar 
--enable-dom 
--enable-opcache=no  

/* contain alpha characters */
#$cacti_session_name = "Cacti";

结果或许报错,依旧三番五次不上mysql服务器。但错误消息有所扭转,末通晓决方案是:关闭Selinux。

把上述配置根据本人的急需设置

2.2、关于Anemometer数据库的授权以致被监督数据库的用户授权:

澳门新浦京娱乐场网站 6

2.2.1、Anemometer用于保存搜罗过来的慢查询数据的MySQL数据库192.168.17.205的授权如下:

GRANT SELECT, UPDATE ON `slow_query_log`.* TO 'app_anemometer_rw'@'localhost'

相应的陈设如下:

[root@oracle conf]# pwd
/var/www/html/anemometer/conf
[root@oracle conf]# vi config.inc.php 

<?php
$conf['datasources']['localhost'] = array(
        'host'  => '127.0.0.1',
        'port'  => 3306,
        'db'    => 'slow_query_log',
        'user'  => 'app_anemometer_r',
        'password' => 'Your@StrongPassword',
        'tables' => array(
                'global_query_review' => 'fact',
                'global_query_review_history' => 'dimension'
        ),
        'source_type' => 'slow_query_log'
);

2.2.2、别的该数据库还须求给各被监察和控制数据库的本子程序授权:

GRANT SELECT, INSERT, UPDATE, DELETE ON `slow_query_log`.* TO 'app_anemometer_rw'@'192.168.16.2%'

2.2.3、各被监察和控制的数据库须要授权阿内mometer程序访谈,用来获取实践安顿等数据:

GRANT SELECT, SUPER ON *.* TO 'app_anemometer_r'@'192.168.17.205'

相应的配置(/var/www/html/anemometer/conf/config.inc.php)如下:

澳门新浦京娱乐场网站 7

3、通过配备,终于能开辟首页了,但首页呈现的SQL长度实在是太短,只有18个字符,导致无法从那些列表上精晓的懂获得底是哪些查询:

澳门新浦京娱乐场网站 8

那几个也能够经过退换/var/www/html/anemometer/conf/config.inc.php文件来配置:

澳门新浦京娱乐场网站 9

暗中认可是取最左侧十十一个人,改成想要的尺寸就能够。

4、最终附上各MySQL服务器中用来搜罗慢查询日志的python脚本:

#!/usr/bin/env python2
#-*- coding: utf-8 -*-
import subprocess

PATH='/bin:/usr/bin'
LOG='/log/slow.log'
SERVER_HOST='192.168.17.205'
DB='slow_query_log'
TAB1='global_query_review'
TAB2='global_query_review_history'
MYSQL_USER='app_anemometer_rw'
MYSQL_PASSWD='Your@StrongPassword'
hostname='MySQL-M-16-21'
print MYSQL_PASSWD
cmd='pt-query-digest --user=' MYSQL_USER ' --password='  MYSQL_PASSWD   ' --port=3306 --review h=' SERVER_HOST ',D=' DB ',t=' TAB1 '  --history h=' SERVER_HOST ',D=' DB ',t=' TAB2  ' --no-report --limit=0% --filter=" $event->{Bytes} = length($event->{arg}) and $event->{hostname}=\"' hostname '\"" '  LOG

print cmd
subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True)

4.1 由于anemometer服务器是经过地点python脚本所布置的hostname定义来扭转访谈各被监察和控制的服务器,用于获取实施布置等有关消息。

据此,若是hostname尽管铺排的不是Ip,那么还需在anemometer服务器192.168.17.205上安排hosts文件:

[root@oracle conf]# vi /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.16.21 MySQL-M-16-21

4.2 大概暗中认可配置下,该平台所彰显的剧情并非和煦想要的

譬喻单个查询的离世90天历史记录里,它是以ts_min为group by的,那会只呈现一条数据,实际不是每一天的数量,笔者改成了ts_max。

另外,ts_cnt也是Sum出来的,假若我们5分钟采摘叁次日志,这么些结果完全不是想要的,笔者那边增加了一站式配置:'query_cnt' => 'MAX(ts_cnt)',

并且将history_defaults和report_defaults的table_田野(field)s配置旅长ts_cnt改为了query_cnt:

澳门新浦京娱乐场网站 10

澳门新浦京娱乐场网站 11

透过以上配置,系统所显示的值基本与预期符合。

本文链接:

本文由澳门新浦京娱乐场网站发布于数据库,转载请注明出处:澳门新浦京娱乐场网站:Cacti安装配置,digest的搭