版本:
centos7,gcc4.8
pg13
pgvector 0.4.4 (2023/6/14最新)
创建用户pgsql,不要用root
useradd -m pgsql
passwd pgsql
mkdir /data/pgsql
chown pgsql:pgsql /data/pgsql
切到pgsql用户
su - pgsql
下面所有操作都用pgsql用户, 除非修改OS参数.
下载
pg13: https://www.postgresql.org/ftp/source/v13.11/
pgvector:
git clone https://github.com/pgvector/pgvector
git co v0.4.4
或者下载 https://github.com/pgvector/pgvector/archive/refs/tags/v0.4.4.tar.gz
把两个源代码上传到/home/pgsql
编译pg13
安装在$HOME/pg13
./confiugre --prefix=$HOME/pg13
make -j16
make install
ls ~/pg13
把下面加入.bash_profile最后:
PGHOME=$HOME/pg13
PATH=$PGHOME/bin:$PATH
退出用户重新登录.
编译pgvector 0.4.4
make
make install
find ~/pg13 | grep vector
创建库,创建插件
注意插件是库
里面的,不是实例
,每个新建的库
都需要建插件
# 创建实例, 默认端口5432, 默认有一个库叫postgres, 默认有一个用户pgsql(即os用户名)
initdb -D /data/pgsql/pg13data
# 下面几行加入/data/pgsql/pg13data/postgresql.conf最后
shared_preload_libraries='vector'
port=5432
listen_addresses='*'
shared_buffers=8GB
# 下面几行加入/data/pgsql/pg13data/pg_hba.conf最后, 免密登录
host all all 0.0.0.0/0 trust
# 启动实例
pg_ctl -D /data/pgsql/pg13data -l $HOME/logfile start
# 连接默认库
psql -p 5432 -h localhost postgres
# 创建插件, 下面在psql中, 不是shell
\dx
create extension vector;
\dx
# 新建一个库
create database testvector;
# 退出psql, 在shell中连接新建的库, 连上后create extension vector;
psql -p 5432 -h localhost testvector