我们使用docker进行构建则可以使用现有的镜像chenxinaz/zhparser
流程
- 我们首先需要一个postgres的配置文件然后对其修改,这个可以直接从启动的容器中获取。
docker run -i --rm chenxinaz/zhparser:latest cat /usr/share/postgresql/postgresql.conf.sample > config/postgres/my_postgres.conf
然后在配置文件结尾加上这几条配置用来控制分词情况
zhparser.multi_short = true #短词复合: 1
zhparser.multi_duality = true #散字二元复合: 2
zhparser.multi_zmain = true #重要单字复合: 4
zhparser.multi_zall = false #全部单字复合: 8
- 然后我们可以直接启动服务
docker run --name postgres_zr -v 本地数据存储位置:/var/lib/postgresql/data -v 本地路径/my_postgres.conf:/etc/postgresql/postgresql.conf -p 5432:5432 -e ALLOW_IP_RANGE=0.0.0.0/0 -e POSTGRES_USER=root -e POSTGRES_PASSWORD=123456 -e POSTGRES_DB=数据库名 -d chenxinaz/zhparser -c 'config_file=/etc/postgresql/postgresql.conf'
ALLOW_IP_RANGE 允许其他机器访问
3. 然后进行配置(postgres 默认是 english 解析器)
--连接到目标数据库,创建zhparser解析器
CREATE EXTENSION zhparser;
-- 将zhparser解析器作为全文检索配置项
CREATE TEXT SEARCH CONFIGURATION chinese (PARSER = zhparser);