使用Postgresql进行中文分词
安装 postgresql 数据库
解压
tar -zxvf postgresql-9.6.6.tar.gz@H_301_7@
配置
./configure@H_301_7@
可能会缺少这个依赖,安装readline开发包
yum install readline-devel@H_301_7@
编译
make@H_301_7@
安装
make install@H_301_7@
添加postgres用户并加入到postgres用户组
groupadd postgres
useradd -g postgres postgres@H_301_7@
创建数据目录
mkdir -p /data/pgdata/@H_301_7@
添加环境变量
方法一,在root和postgres用户下分别执行(重启机器后失效)
export PATH=/usr/local/pgsql/bin:$PATH@H_301_7@
方法二,在root和postgres用户下分别执行(永久生效)
vim ~/.bash_profile
再最后边追加
export PATH=/usr/local/pgsql/bin:$PATH@H_301_7@
修改数据目录和pg程序目录的权限
chown postgres:postgres /data/pgdata/
chown postgres:postgres /usr/local/pgsql/@H_301_7@
初始化数据库
su - postgres
/usr/local/pgsql/bin/initdb -D /data/pgdata/@H_301_7@
添加postgresql到系统服务
vim postgresql-9.6.6/contrib/start-scripts/linux
PGDATA=”/data/pgdata/”
chmod a+x postgresql-9.6.6/contrib/start-scripts/linux
cp postgresql-9.6.6/contrib/start-scripts/linux /etc/init.d/postgresql@H_301_7@
用系统服务的方式启动postgresql
service postgresql start@H_301_7@
查看postgresql的端口起来了没有
netstat -tlnp | grep 5432@H_301_7@
设置开机启动
chkconfig postgresql on@H_301_7@
安装分词程序
tar -jxvf scws-1.2.3.tar.bz2
cd scws-1.2.3/@H_301_7@
配置
./configure@H_301_7@
编译
make@H_301_7@
安装
make install@H_301_7@
安装postgresql的分词插件,这个插件依赖scws程序
解压
unzip zhparser-0.1.4.zip
cd zhparser-0.1.4@H_301_7@
编译
SCWS_HOME=/usr/local make@H_301_7@
安装
make install@H_301_7@
测试
进入postgres用户
su - postgres@H_301_7@
进入pg数据库
切换到postgres数据库
\c postgres@H_301_7@
创建扩展
CREATE EXTENSION zhparser;
CREATE TEXT SEARCH CONFIGURATION testzhcfg (PARSER = zhparser);
ALTER TEXT SEARCH CONFIGURATION testzhcfg ADD MAPPING FOR n,v,a,i,e,l WITH simple;@H_301_7@
查询分词
SELECT to_tsvector(‘testzhcfg’,’南京市长江大桥’);
@H_301_7@