PostgreSQL向量数据插件--pgvector安装(附PostgreSQL安装)

打印 上一主题 下一主题

主题 1814|帖子 1814|积分 5442

本文为本人在安装pgvector中踩过的坑,已找到解决方法,现向大家分享。
一、版本


  • pgvector:0.5.1
  • PostgreSQL数据库:14.0
  • 操作系统:Ubuntu18.04
二、数据库安装

由于在此之前安装过PostgreSQL8.4.1,而pgvector只支持11.0及以后的版本,因此安装PostgreSQL14.0
1. 在官网下载PostgreSQL14.0的安装包

PostgreSQL官网

2.增长用户postgres

  1. adduser postgres
复制代码
3.解压安装

解压压缩包
  1. tar zxvf postgresql-14.0.tar.gz
复制代码
安装依赖包
  1. sudo apt-get install gcc
  2. sudo apt-get install g++
  3. sudo apt-get install make
  4. sudo apt install libreadline-dev
  5. sudo apt-get install zlib1g-dev
复制代码
编译
  1. cd postgresql-14.0
  2. ./configure --prefix=/usr/local/pgsql
  3. --enable-debug
  4. sudo make && sudo make install
  5. cd contrib #插件
  6. sudo make && sudo make install
复制代码
数据目录创建
  1. sudo mkdir -p /var/postgresql/data
  2. chown postgres:postgres /var/postgresql -R
  3. chown postgres:postgres /usr/local/pgsql
  4. -R
复制代码
切换用户
  1. su  postgres
复制代码
环境变量设置
  1. vi ~/.bash_profile
复制代码
在~/.bash_profile中写入:
  1. export PGHOME=/usr/local/pgsql
  2. export PGDATA=/var/postgresql/data
  3. export PATH=$PGHOME/bin:$PATH
  4. export MANPATH=$PGHOME/share/man:$MANPATH
  5. export LANG=en_US.utf8
  6. export DATE=`date +"%Y-%m-%d %H:%M:%S"`
  7. export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH
  8. alias rm='rm  -i'
  9. alias ll='ls -lh'
  10. #alias pg_start='pg_ctl start -D $PGDATA'
  11. #alias pg_stop='pg_ctl stop -D $PGDATA -m fast'
复制代码
初始化数据库
  1. initdb -D /var/postgresql/data
复制代码
连接数据库服务
  1. pg_ctl -D /var/postgresql/data start
复制代码
三、pgvector安装

github上的pgvector
1. 从github上克隆下来

首先要安装git,具体可参考:安装Git
  1. cd /tmp
  2. git clone --branch v0.5.1 https://github.com/pgvector/pgvector.git
复制代码
此时可能会碰到拒绝连接

等待即可,由于可能是网络不好。。
2. 安装pgvector插件

  1. cd pgvector/
  2. make && sudo make install
复制代码
此时可能会碰到Makefile:48: /usr/lib/postgresql/10/lib/pgxs/src/makefiles/pgxs.mk: 没有那个文件或目录
make: *** 没有规则可制作目的“/usr/lib/postgresql/10/lib/pgxs/src/makefiles/pgxs.mk”。 停止。

这是由于环境配置没有配置好,查看pg_config在哪
  1. which pg_config
复制代码

可以看到我的pg_config的绝对地址,但其实它应该在/usr/local/pgsql
/bin/pg_config
所以以下有两种方法可以解决:

  • 在下令行export设置临时环境变量
  1. sudo make PG_CONFIG=/usr/local/pgsql
  2. /bin/pg_config
  3. sudo make PG_CONFIG=/usr/local/pgsql
  4. /bin/pg_config install
复制代码

  • 在~/.bash_profile修改环境变量
  1. vi ~/.bash_profile
复制代码
在文件内加入
  1. export PG_CONFIG=/usr/local/pgsql
  2. /bin/pg_config
复制代码
安装成功如图

3. 开始利用pgvector

启用pgsql
下令行


  1. psql
复制代码

  1. pgsql
复制代码
创建扩展

  1. CREATE EXTENSION vector;
  2. CREATE TABLE items (id bigserial PRIMARY KEY, embedding vector(3));
  3. INSERT INTO items (embedding) VALUES ('[1,2,3]'), ('[4,5,6]');
复制代码
此处有一个特别提醒,不是pgvector,而是vector

运行CREATE成功后

查看items表


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

万万哇

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表