夏清然

夏清然的博客

他的个人主页  他的博客

查看PostgreSQL buffercache的使用情况

夏清然  2009年07月31日 星期五 13:16 | 1224次浏览 | 0条评论

在设定了了一个大的shared_buffers后,需要知道其使用的状况,例如那些表被其cache等,可以用pg_buffercache来完成。

 

安装pg_buffercache

解压postgresql的源码文件,进入contrib/pg_buffercache/目录安装:

# gmake

# gmake install

 

给需要查看的数据库安装pg_buffercache需要的函数和视图:

#  psql -h localhost -U <pg_superuser> -d <dbname> -f `pg_config --sharedir`/contrib/pg_buffercache.sql

 

然后进入数据库:

# psql -h localhost -U <pg_superuser> -d <dbname>

 

查看结果

 <dbname> =# SELECT c.relname, count(*) AS buffers
 FROM pg_buffercache b INNER JOIN pg_class c
 ON b.relfilenode = c.relfilenode AND
 b.reldatabase IN (0, (SELECT oid FROM pg_database
 WHERE datname = current_database()))
 GROUP BY c.relname
 ORDER BY 2 DESC;
 

 relname             | buffers
 ---------------------------------+---------
 tenk2                           |     342
 tenk1                           |     141
 pg_proc                         |      46
 pg_class                        |      45
 pg_attribute                    |      43
 pg_depend                       |      22

 

评论

我的评论:

发表评论

请 登录 后发表评论。还没有在Zeuux哲思注册吗?现在 注册 !

暂时没有评论

Zeuux © 2024

京ICP备05028076号