注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

PostgreSQL 中文网

 
 
 

日志

 
 

PG statspack 的安装和使用  

2010-08-10 14:23:25|  分类: Postgres基础 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |


今天学习了下postgres 的statpack 功能,设置PG的statpack功能需要下载一个包,并安装;
PG的statspack功能和Oracle 的Statspack功能相似,用来统计一个时间段内数据库的运行
指标只是PG 的statpack报告内容相比Oracle的没有那么详尽,下面介绍下PG statspack安
装和使用过程。


1 下载 pgstatspack tar包
下载地址 :http://pgfoundry.org/frs/?group_id=1000375&release_id=1321
我下载的是pgstatspack_version_2.1.tar.gz, 是目前的最新版本;

2 创建一个超级用户,如果使用postgres用户,则不用新建;

3 开始安装,执行脚本 install_pgstats.sh (以postgres OS用户执行脚本)
cd pgstatspack的解压目录
./install_pgstats.sh
这个脚本将在各个数据库(postgres.templates库除外)上安装统计信息表和函数;

4 创建 snapshot,有两种方式:
4.1 手工方式创建 snapshot
   Snapshot with comment:
   select pgstatspack_snap('my comment');
   
4.2 crontab 方式自动创建 snapshots
以下是我本机的crontab,每15分钟创建一个snapshot
#Automated snapshots every 15 mins
*/15 * * * *    /home/postgres/pgstatspack/bin/snapshot.sh 1 > /home/postgres/pgstatspack/log/1.log 2>&1

5 生成报表
cd pgstatspack的解压目录/bin
./pgstatspack_report.sh <username> <database>
pgstatspack_report.sh -u postgres -d mydb

执行这个脚本后,就会提示输入begin snapid,end snapid,这里和生成Oracle 的statspack报告内似;
这个脚本生成的报告默认是在/tmp目录下,可以修改下这个脚本,将目录生成在指定目录
vi pgstatspack_report.sh,修改FILENAME变量即为报告存放目录。
..
FILENAME=/home/postgres/pgstatspack/report/pgstatreport_${CUR_DATE}_${STARTSNAP}_${STOPSNAP}.txt
..

6 报告内容
napshot information
Begin snapshot :
 snapid |             ts             |     description
--------+----------------------------+---------------------
      4 | 2010-08-07 04:36:38.303123 | cron based snapshot
(1 行)

End snapshot   :
 snapid |             ts             |     description
--------+----------------------------+---------------------
      5 | 2010-08-07 04:51:33.874608 | cron based snapshot
(1 行)

Seconds in snapshot:  895.571485


Database version
                                                    version
---------------------------------------------------------------------------------------------------------------
 PostgreSQL 9.0beta3 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-48), 32-bit
(1 行)

 current_database | dbsize
------------------+--------
 mydb             | 29 MB
(1 行)

Database statistics
   database    |  tps  | hitrate |  lio_ps  | pio_ps | rollbk_ps
---------------+-------+---------+----------+--------+-----------
 mydb          | 75.10 |   99.00 | 11420.30 |   0.35 |      0.00
 template1     |  0.03 |   99.00 |     2.03 |   0.00 |      0.00
 postgres      |  0.03 |   99.00 |     2.03 |   0.00 |      0.00
 template0     |  0.00 |    0.00 |     0.00 |   0.00 |      0.00
(4 行)

注意: 以下是报告的部分内容, 详细内容可以参照报告模板,解压包的目录下有份报告模板
pgstatspack_sample_report.txt。

--字段解释
tps - transactions per second
Number of committed transactions between snapshots, devided by the number of seconds between the two snapshots.
pg_stat_database.xact_commit - number of committed transactions

hitrate  :  cache命中率
Number of cache reads as a percentage of the total number of reads (cache and physical) between the two snapshots.
pg_stat_database.blks_hit - cache reads
pg_stat_database.blks_read - physical reads

lio_ps:  逻辑读
Number of logical reads between snapshots, devided by the number of seconds between the two snapshots.
Logical reads is in postgresql the number of physical reads + the number of cache reads.
pg_stat_database.blks_hit - cache reads
pg_stat_database.blks_read - physical reads

pio_ps:  物理读
Number of physical reads between snapshots, devided by the number of seconds between the two snapshots.
pg_stat_database.blks_read - physical reads

rollbk_ps
Number of rollbacks between snapshots, devided by the number of seconds between the two snapshots.
pg_stat_database.xact_rollback

--statspack相关表
pgstatspack_snap
pgstatspack_database
pgstatspack_tables
pgstatspack_indexes
pgstatspack_sequences
pgstatspack_settings
pgstatspackid

  评论这张
 
阅读(26314)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017