pgvector

发布时间 2023-07-12 11:12:48作者: Gao科技

版本:
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