postgresql开源监控工具——pgwatch详细安装和测试

pgwatch详细安装和测试

安装时一直出错,但是网上又搜不到任何文档决定自己写一篇详细的安装文档。

转载注明出处:http://blog.csdn.net/lengzijian/article/details/8127207


1.下载pgwatch,我这里我用的版本是1.0,下载地址如下:

wget http://www.cybertec.at/download/pgwatch/pgwatch-1.0.tar.gz

2.解压并打开README文件,查看安装所需,这里的安装就不详细讲解

tar -zxvf pgwatch-1.0.tar.gz

vim README

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

Requirements:

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

You will need a handful of components to make this work:

- Apache (webserver) # apache用作web服务器

- PHP 5 (scripting language) # php5版本

- pgsql extension for PHP (see http://www.php.net/manual/en/book.pgsql.php) # postgresql的php客户端

- PostgreSQL 9 (to store the data we collect) # postgresql支持最低版本为9

- dblink (contribution module for PostgreSQL 9) # 需要安装dblink(并非默认安装)

- For now we only support PostgreSQL >= 9.0 databases.

Older systems cannot be monitored, however, we will

add support for future database releases.

3.首先把你刚刚解压的文件夹,放在apache的目录下。(这里要注意的是要设置好文件夹的权限)

4.检测是否安装postgresql的php客户端,如果没有可以直接用yum安装:

yum installphp-pgsql.i386(我的是32位,同学们可以自己用yum search搜索下,之后重启apache)

检测是否安装脚本(php):

// Connecting, selecting database

$dbconn = pg_connect("host=192.168.30.200 port=5434 dbname=lengzijian user=postgres password=123456")

or die('Could not connect: ' . pg_last_error());

// Performing SQL query

$query = 'SELECT * FROM t_user limit 10';

$result = pg_query($query) or die('Query failed: ' . pg_last_error());

// Printing results in HTML

echo "

\n";

while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {

echo "\t

\n";

foreach ($line as $col_value) {

echo "\t\t

\n";

}

echo "\t

\n";

}

echo "

$col_value
\n";

// Free resultset

pg_free_result($result);

// Closing connection

pg_close($dbconn);

?>

5.查看php是否支持json,如果不支持可能会报错,如果没有按照如下方法安装:

yum installphp-pecl-json.i386 (我的是32位的,同学们可以自己用yum search搜索下,之后重启apache)

6.postgresql数据库需要安装dblink,具体操作如下:

进入postgresql-9.1.3/contrib/dblink目录下,make,make install

7.在浏览器(chrome)中输入地址:http://192.168.30.200/pgwatch/setup.php

如果连接出错会出现Connection failed字样,这时候要检查postgresql数据库是否启动正常


点击next


确认基本信息后点击start


点击出现的网页连接,进行配置:


下面是我配置了两个数据库后显示的一些信息:



注意:

最后要在linux下加入定时任务,我的crontab如下:

0 * * * * cd/var/www/html/pgwatch/util && /usr/bin/php getraw_d.php

首先本人是在linux下完成的如上配置,windows下没有试过,在作者的文档中说,在linux下可以用setup.sh进行安装操作,本人尝试许久,发现setup.sh脚本中存在非常多的错误,例如你输入端口为5434,但是连接数据库后还是会按照5432(默认连接),诸如此类错误比较多。本人用setup.sh安装时,索性更改了setup.sh的代码,并且直接在脚本中写好配置,这样就避免了很多输入的情况。

还有人可能想问setup究竟做了哪些操作,看了shell脚本后发现,其实就是检测输入数据库是否正常,如果正常,写如配置文件pgwatch/config/config.ini中(读者可以查看此文件,文件中还记录的pgwatch的日志文件位置,如果权限不够可能会报错)。

如果打开网页后出现莫名奇妙的错误,例如等待动画不消失时,可能是pgwatch缓存了部分错误页面,可以把templates_c目录下的缓存文件全部删除之后,再次尝试。


你可能感兴趣的:(postgresql开源监控工具——pgwatch详细安装和测试)