这个附录包含contrib路径下相关模块的信息。 包括移植工具,分析工具和插件工具,他们不是PostgreSQL核心系统的一部分,主要因为 只有很少的用户会用到。但不会影响它们的使用。
当从源码发布包编译时,这些模块不会自动编译,除非编译了“world”目标(参阅step 2)。 可以在配置的源代码树中的contrib路径下,通过下面的命令编译安装:
gmake gmake install
或在模块的子目录下,有选择的编译安装模块。许多模块都有回归测试,在PostgreSQL服务器在运行时,可以通过下面的命令执行:
gmake installcheck
需要注意的是,不支持gmake check;必须有一个可操作的数据库服务器来运行这些测试, 并且必须已经编译安装了这个或这些要测试的模块。
如果是用的是预打包版的PostgreSQL,这些模块可以作为一个单独的子包来获得, 如postgresql-contrib。
许多模块支持新的用户自定义函数,操作符,或数据类型。 在已经安装了代码之后,为了使用这些模块,需要在数据库系统中注册新的对象,通过运行模块目录下提供的.sql文件中的SQL命令,如;
psql -d dbname -f SHAREDIR/contrib/module.sql
在此,SHAREDIR表示安装的"share"路径(pg_config --sharedir 会指出它是什么)。 在多数情况下,必须使用数据库超级用户来运行这个脚本。
需要在每个你想使用该模块的数据库中运行这个.sql脚本。 另外,在template1数据库中运行这个脚本,以便这个模块可以被复制到缺省随后创建的数据库中。
可以通过调整.sql文件中的第一条命令来决定想在数据库中的那个模式下进行创建。 缺省使用的是public。
在PostgreSQL主版本升级之后,再次运行安装脚本,即使通过转储恢复已经有了这个模块。 这是为了保证那些新的函数是可用的,并且任何必要的更正将被应用。