从源代码(在OpenSUSE 11.4上,在存储库中没有此版本)成功安装postgresql 9.2.2之后,我正在尝试恢复使用pg_trgm扩展名的数据库.这会导致错误,因为找不到pg_trgm.
从这个StackOverflow问题:Postgres中的相似性函数和pg_trgm,我认为pg_trgm应该在/ usr/share/postgresql // contrib中,但是我的/ usr树中没有任何contrib文件夹.
此外,我似乎无法找到postgres扩展机制如何工作,或如何手动安装扩展的明确解释.
postgresql源代码树中有一个contrib文件夹,但我不知道如何使用它.我应该手动将其复制到/ usr树吗?谁能指点我(或给出)如何在postgresql中安装像pg_trgm这样的扩展的解释?
Dan*_*ité 13
假设您已经配置了postgresql ./configure,它使用了默认前缀/usr/local/pgsql,因此所有内容都安装在该目录下.
您链接的答案与Debian有关,Debian使用符合Debian政策的不同布局,但在您的情况下/usr/share...无关紧要.无论如何,没有必要知道为了从contrib安装东西,因为不需要手动复制任何东西.
要从pg_trgm源安装扩展,有两个步骤:
1)从postgresql源代码树构建并安装它:
$ cd /path/to/src/postgresql-9.2.2/contrib/pg_trgm $ make $ sudo make install # or su -c 'make install' if you don't use sudo
2)psql在您的数据库中激活它:
$ sudo -u postgres psql -d database -c "create extension pg_trgm;"
要在将来创建的任何数据库上默认激活它,请将此命令应用于template1数据库.
| 归档时间: |
|
| 查看次数: |
17419 次 |
| 最近记录: |