扩展
前言
postgres从 一开始就被设计为可以扩展的,所以经常可以看到某个开发者用扩展方式给postgres增加某项功能。postgres源码目录的contrib
目录中有大量扩展,该目录下面的扩展默认不会安装,除非编译参数添加了world
。这些扩展大部分只需要make && make install
就可以安装上了。
psql中管理扩展
- 列出当前库中所有扩展
\dx
- 查看指定扩展:
\dx plpgsql
- 创建扩展:
CREATE EXTENSION <extension name>;
- 删除扩展:
DROP EXTENSION <extension name>;
以pg_trgm安装为例
pg_trgm 主要用于文本相似性搜索和全文索引。它通过对文本生成三元组(trigram)来实现快速高效的字符串相似性计算和模糊匹配。
- 切换到pg_trgm的源码目录
cd contrib/pg_trgm
- 编译安装
make
make install
- 在数据库中创建扩展对象
CREATE EXTENSION pg_trgm;
- 检查是否已安装
SELECT * FROM pg_available_extensions WHERE name = 'pg_trgm';