【服务器二】下载拓展成功

接上文。玩转(坏)服务器【一】-CSDN博客

当我在EPEL 源地址失效,但pgvector 编译只需要 Base 源里的 3 个核心依赖,完全可以绕开 EPEL;

  • 关键命令:
    • 装核心依赖:yum install -y postgresql13-devel gcc make --disablerepo=epel

CentOS 7 的 Base 源里没有postgresql13-devel这个包 (PG13 不是 CentOS 7 官方默认版本,这个包不在 Base 源里,需要先添加 PostgreSQL 官方的 PGDG 仓库),而gccmake已经装好了(显示 "已安装并且是最新版本"),咱们只需要补装postgresql13-devel就行!

第一步:先解释报错

输出内容 通俗含义
没有可用软件包 postgresql13-devel Base 源里找不到这个包,因为 PG13 是 PostgreSQL 官方维护的,不是 CentOS 官方包
软件包 gcc-4.8.5-44.el7.x86_64 已安装并且是最新版本 gcc 编译器已经装好了,不用再装
软件包 1:make-3.82-24.el7.x86_64 已安装并且是最新版本 make 工具也装好了,不用再装
无须任何处理 除了 postgresql13-devel,其他依赖都满足

第二步:解决方案(添加 PG 官方仓库,装 postgresql13-devel)

PostgreSQL 官方提供了专门的 PGDG 仓库,里面有所有版本的 PG 开发包,咱们先添加这个仓库,再装包:

步骤 1:下载并安装 PGDG 仓库配置包(CentOS 7 适配)
复制代码
# 下载PGDG仓库包(适配CentOS 7)
wget https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

# 安装仓库包(添加PG官方源)
rpm -ivh pgdg-redhat-repo-latest.noarch.rpm --nodeps
  • 含义
    • wget:下载 PG 官方的仓库配置文件;
    • rpm -ivh:安装 rpm 包,--nodeps跳过依赖检查(避免和系统现有包冲突);
  • 效果 :执行后会在/etc/yum.repos.d/里添加 PG 官方的源配置,yum 就能找到 postgresql13-devel 了

不过这个服务器没有下载wget,于是换用下面语句:

curl -o /root/pgdg-repo.rpm https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

总之兜兜转转,我也不知道问题为什么会这么多,头也有点痛了,其实本来并不应该这么困难,但是中途报错,什么yum源呀等等,总之最后时刻的一些语句是大道至简如下:

sudo yum install pgvector_13

下载完之后记得更新pg,如下:

查看PG13服务名(不同系统可能略有差异)

sudo systemctl list-unit-files | grep postgresql-13

重启PG13服务(通用命令)

sudo systemctl restart postgresql-13

确认服务启动成功

sudo systemctl status postgresql-13

后面就是进入pg操作拓展

1. 切换到postgres系统用户 sudo su - postgres (后面还有一步psql)

2. 登录PG13(确保是13版本,不是其他版本) psql -U postgres

3. 先确认当前PG版本(必须是13!) postgres=# SELECT version();

输出里要能看到「PostgreSQL 13.x」,如果是12/14等,说明登错版本了

4. 重新执行创建扩展(务必带分号!)

postgres=# CREATE EXTENSION vector;

成功会提示:CREATE EXTENSION

5. 验证扩展 postgres=# \dx vector;

退出 \q ctrl + d

终于终于!哎 真的要哭了呜呜┭┮﹏┭┮

算是结束了吧,中途太乱了不想总结~

相关推荐
雪可问春风1 天前
docker环境部署
运维·docker·容器
lwx9148521 天前
Linux-Shell算术运算
linux·运维·服务器
翻斗包菜1 天前
PostgreSQL 日常维护完全指南:从基础操作到高级运维
运维·数据库·postgresql
somi71 天前
ARM-驱动-02-Linux 内核开发环境搭建与编译
linux·运维·arm开发
海的透彻1 天前
nginx启动进程对文件的权限掌控
运维·chrome·nginx
路溪非溪1 天前
Linux驱动开发中的常用接口总结(一)
linux·运维·驱动开发
此刻觐神1 天前
IMX6ULL开发板学习-01(Linux文件目录和目录相关命令)
linux·服务器·学习
航Hang*1 天前
第3章:Linux系统安全管理——第2节:部署代理服务
linux·运维·服务器·开发语言·笔记·系统安全
fengfuyao9851 天前
VC++基于服务器的点对点文件传输实例
服务器·开发语言·c++
favour_you___1 天前
epoll惊群问题与解决
服务器·网络·tcp/ip·epoll