我只想知道如何安装三元组索引方案中使用的模块pg_tgrm,该模块使您可以对索引执行非锚定的搜索模式。

WHERE foo LIKE '%bar%';


评论

我清理了这个问题,因为这是一个很好的问题,但与PostGIS或任何其他东西都没有关系。

#1 楼

pg_trgm是扩展名,因此:

CREATE EXTENSION pg_trgm;


如果出现以下错误


错误:无法打开扩展名控制文件“ ... / extension / pg_trgm.control”:
没有这样的文件或目录“


那么您需要为您的操作系统安装模块



Ubuntu / Debian:

sudo apt install postgresql-contrib



Redhat / Centos


sudo dnf install postgresql10-contrib



Fedora

sudo dnf install postgresql-contrib




评论


我在MaxOSX上经历过以下情况:如果使用conda / pip安装postgresql,则似乎无法安装postgresql-contrib模块;但是,如果使用Homebrew安装postgresql,则会自动安装此模块。

–chAlexey
20年8月18日在12:43



#2 楼

1)登录到postgres

psql -U <DB_USERNAME>

2)连接后,切换到要为其安装扩展的DB:

\c <DB_NAME>

3)然后按照先前的回答安装扩展程序:我以为安装是全球性的事情,但似乎每个数据库都安装了它

#3 楼

要完成@Jendrusk的答案:


CentOs系统,您还可以使用

yum install postgresql-contrib