由于国内服务器操作系统,仍然以CentOS为主流(详见《国产服务器操作系统发展报告(2023年).pdf》),而Postgresql既支持关系数据又很好的支持了向量数据,后续的编程实验,将以Postgresql做为数据存储。所以本篇为大家详细介绍怎样在CentOS操作系统上安装Postgresql向量数据库。
STEP1:创建postgres用户
执行下面的命令,创建postgres用户
新增postgres用户组
执行命令:sudo groupadd postgres
新增postgres用户并且设置这个postgres用户属于创建的postgres用户组
执行命令:sudo useradd -g postgres postgres
修改postgres用户密码
执行命令:sudo passwd postgres
试验一下切换到postgres用户
执行命令:su postgres
STEP2:使用yum安装Postgresql 14
运行下面的命令即可安装、启动Postgresql14:
安装postgresql的yum源
执行命令:sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
安装postgresql
执行命令:sudo yum install -y postgresql14-server
初始化postgresql
执行命令:sudo /usr/pgsql-14/bin/postgresql-14-setup initdb
把postgresql加入自启动列表,机器启动时自动启动postgresql
执行命令:sudo systemctl enable postgresql-14
启动postgresql
执行命令:sudo systemctl start postgresql-14
查看一下postgresql是否运行正常:
使用psql命令登录一下,看看是否可以操作:
STEP3:开启远程访问权限Postgresql 14
默认安装完成,Postgresql只能本地访问,需要修改postgresql.conf和pg_hba.conf两个配置文件,并正确的设置用户,才能远程访问。
执行命令:sudo vim /var/lib/pgsql/14/data/postgresql.conf
增加下面这行配置:
执行命令:sudo vim /var/lib/pgsql/14/data/pg_hba.conf
增加下面这行配置:
执行下面的命令设置用户:
执行命令:su postgres
执行命令:psql -U postgres
执行命令:CREATE USER leotest;
执行命令:ALTER ROLE leotest LOGIN ;
执行命令:CREATE DATABASE " leotest ";
执行命令:grant all privileges on database "leotest" to leotest;
执行命令:ALTER USER leotest WITH PASSWORD ' 你的密码';
重新启动postgresql
执行命令:sudo systemctl restart postgresql-14
看看启动是否正常:
我们试验一下,看看使用IP地址是否可以正常登录:
STEP4:为Postgresql 14安装vector向量数据库插件
先安装llvm5和postgresql14-devel依赖。
执行命令: sudo vi /etc/yum.repos.d/c7-devtoolset-7-x86_64.repo ,
文件内容:
[c7-devtoolset-7]
name=c7-devtoolset-7
baseurl=https://buildlogs.centos.org/c7-devtoolset-7.x86_64/
gpgcheck=0
enabled=1
[c7-llvm-toolset-7]
name=c7-llvm-toolset-7
baseurl=https://buildlogs.centos.org/c7-llvm-toolset-7.x86_64/
gpgcheck=0
enabled=1
[fedoraproject-epel-7]
name=fedoraproject-epel-7
baseurl=https://download-ib01.fedoraproject.org/pub/epel/7/x86_64/
gpgcheck=0
enabled=1
执行命令:sudo yum install -y llvm5.0-devel llvm-toolset-7-clang
接下来安装postgresql14-devel开发包
执行命令: sudo yum install postgresql14-devel.x86_64
安装pgvector组件:
执行命令: wget https://github.com/pgvector/pgvector/archive/refs/tags/v0.7.0.tar.gz
执行命令:tar zxvf v0.7.0.tar.gz
执行命令:cd pgvector-0.7.0
执行命令:export PG_CONFIG=/usr/pgsql-14/bin/pg_config
执行命令:sudo make
执行命令:sudo make install
执行命令:su postgres
执行命令:psql -U postgres
执行命令:\c leotest
执行命令:CREATE EXTENSION vector;
执行命令:CREATE TABLE items (id bigserial PRIMARY KEY, embedding vector(3));
执行命令:INSERT INTO items (embedding) VALUES ('[1,2,3]'), ('[4,5,6]');
如果上面的命令执行都没有出错,我们的向量数据库就安装成功了。
我们查询一下数据:
STEP5:结语
后面的文章里,我们将使用上面安装的postgresql向量数据库做相关的编程试验,敬请关注。