Linux安装PostgreSQL
查看系统版本
[root@~]# cat /etc/redhat-release
Alibaba Cloud Linux release 3 (Soaring Falcon)查看 PG 数据库版本
psql --version通过 yum 方式安装
添加 PG 官方仓库
因为 Alibaba Cloud Linux 3 默认仓库可能不包含最新版 PostgreSQL ,需手动添加官方仓库:
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm安装 PG
选择版本15:
sudo dnf install -y postgresql15-server postgresql15-contrib报错
有可能报错:
PostgreSQL common RPMs for RHEL / Rocky / AlmaLinux 3 - x86_64 100 B/s | 146 B 00:01
Errors during downloading metadata for repository 'pgdg-common':
- Status code: 404 for https://download.postgresql.org/pub/repos/yum/common/redhat/rhel-3-x86_64/repodata/repomd.xml (IP: 147.75.85.69)
Error: Failed to download metadata for repo 'pgdg-common': Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried表示 PostgreSQL 仓库 URL 中的 $releasever 变量被解析为 3,而官方仓库仅支持 8。 Alibaba Cloud Linux 3 基于 RHEL 8 的软件生态,但系统的 releasever 值(通过 rpm -E %rhel 查看)为 3,导致仓库路径错误。
编辑 PG 仓库文件
sudo vim /etc/yum.repos.d/pgdg-redhat-all.repo将所有 $releasever 替换为 8
:%s/\$releasever/8/g重试
sudo dnf install -y postgresql15-server postgresql15-contrib配置 PGSQL
配置远程访问权限
编辑 pg 配置文件:
sudo vim /var/lib/pgsql/15/data/postgresql.conf配置以下参数,注意原默认端口为 5432
listen_addresses = '*'
port = 55432配置客户端访问规则
修改 pg_hba.conf:
sudo vim /var/lib/pgsql/15/data/pg_hba.conf添加一行:
host all all 0.0.0.0/0 md5重启服务
sudo systemctl restart postgresql-15配置环境变量
export PATH=$PATH:/usr/pgsql-15/bin/验证安装
登录数据库
默认端口为5432,如果没修改,则不用加 -p 参数
sudo -u postgres psql -p 55432查看版本
SELECT version();修改密码
输入 \password 后回车,再输入密码
\password postgres开放端口
阿里云控制台开放55432端口通行
Linux 开发55432端口
firewall-cmd --zone=public --add-port=55432/tcp --permanent重新加载防火墙
firewall-cmd --reload查看已开放的端口
firewall-cmd --zone=public --list-ports安装 pgvector 插件
安装 PostgreSQL15 开发工具包
开发工具包:
yum install -y postgresql15-develcentos-release-scl-rh包:
yum install -y centos-release-scl-rh下载/编译/安装插件
下载:
cd /tmp
git clone --branch v0.5.1 https://github.com/pgvector/pgvector.git编译&安装:
cd pgvector
make & make install选择数据库安装拓展
登录数据库:
sudo -u postgres psql -p 55432安装vector扩展:
CREATE EXTENSION vector;创建测试表:
CREATE TABLE test (id bigserial PRIMARY KEY, embedding vector(3));插入测试数据:
INSERT INTO test (embedding) VALUES ('[1,2,3]'), ('[4,5,6]');按与给定向量相似度(L2 distance)排序,显示前5条:
SELECT * FROM test ORDER BY embedding <-> '[3,1,2]' LIMIT 5;版权所有
版权归属:haipeng-lin