跟着上次的文章(《Postgresql内存表》),我下载了pgfincore,安装到postgresQL 9.1版本。 网址:http://pgfoundry.org/projects/pgfincore/ 目前是1.1版本的, 文档内容参考网址: http://villemain.org/projects/pgfincore 我下载的安装文件名为pgfincore-v1.1.gz,按照以下命令安装: tar zxvfpgfincore-v1.1.gz cdpgfincore-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 (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|