部署pgfincore1.1在Postgresql 9.1上

来源:互联网 发布:美萍软件价格 编辑:程序博客网 时间:2024/06/02 07:03

跟着上次的文章(《Postgresql内存表》),我下载了pgfincore,安装到postgresQL 9.1版本。
网址:http://pgfoundry.org/projects/pgfincore/
目前是1.1版本的,
文档内容参考网址:
http://villemain.org/projects/pgfincore
我下载的安装文件名为pgfincore-v1.1.gz,按照以下命令安装:
tar zxvf pgfincore-v1.1.gz
cd pgfincore-v1.1
make clean
make
make install
运行最后一个命令时,会出现报错信息,如图:


在最后的位置出现了一个错误:
/opt/PostgreSQL/9.1/lib/postgresql/pgxs/src/makefiles/../../config/install-sh: ./pgfincore--unpackaged--.sql does not exist.
make: *** [install] Error 1
错误的意思是说找不到pgfincore--unpackaged--.sql文件。
我在pgfincore-v1.1目录下,果然找不到这个文件,如图:

解决方式:
将文件pgfincore--unpackaged--1.1.sql改名为pgfincore--unpackaged--.sql,然后再运行make install,安装成功。

接着就是登录数据库进行后面的操作,这里就不介绍如何登录了,
登录后,运行命令如下:
CREATE EXTENSION pgfincore
但是出现错误信息,如图:

然后在对应的目录果然没发现pgfincore--1.1.sql文件,需要将pgfincore--.sql改名为pgfincore--1.1.sql,然后在运行此命令,成功!

后面的安装步骤就是导入pgfincore.sql,全部参考网址:http://villemain.org/projects/pgfincore里的内容。
严格来说,pgfincore也是只是预先将block加入到内存区里,如图:

这是未加载到内存的情况,主要是pages_mem和group_mem两个参数都为0.


这是已经表所对应的block加载到内存中,主要pages_mem和group_mem的值,不过是不是永久加载,目前我没从文档当中看到,我也还没测试出来。

这里说下,很多网上其他的资料,将查看状态函数写错了,然后很多转贴的人也是跟着错了,如图:

这里不是pgmincore,而是pgfincore。

补充下常用方法:

select * from pgmincore ('表名');//查看表的block是否加载到内存中

select * from pgsysconf();//查看系统block块使用情况

select * from pgsysconf_pretty();//查看系统的page情况(以MB为单位)

等,可以参考:http://villemain.org/projects/pgfincore




原创粉丝点击