原文地址:Install Postgres v14 + -contrib on AWS Linux 2
原文作者:GORTHX
最近,我需要在Amazon Linux 2主机上安装Postgres v14和contrib扩展包。
contrib扩展包需要的依赖是python3.6,但主机上默认情况下安装python3.7版本。你可能会认为删除预安装的版本并安装正确的版本很容易,但它并不是(无论如何对我来说),我最终陷入了安装/卸载的反复中。
关键是要从amazon-linux-extras包中启用python-3的topic,并需要禁用amzn2-core存储库。请遵循分步说明。
出于参考目的,列出遇到的报错:
# sudo yum install postgresql14 postgresql14-contrib Error: Package: postgresql14-contrib-14.1-1PGDG.rhel7.x86_64 (pgdg14) Requires: libpython3.6m.so.1.0()(64bit) You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest
复制
查询安装的python版本:
# python3 -V Python 3.7.10
复制
说明:
1. 启动实例。
2. 安装amazon-linux-extras库(如果尚未安装):
# which amazon-linux-extras
复制
如果没有安装,执行以下命令:
# sudo yum install amazon-linux-extras
复制
3. 从 amazon-linux-extras库中安装epel包:
sudo amazon-linux-extras install epel
复制
4. 获取 Postgres GPG 密钥和所需库的 URL。
访问 https://download.postgresql.org/pub/repos/yum/
a.找到对应的密钥 例如:RPM-GPG-KEY-PGDG-14 复制链接;把它填写到gpkey参数后面(然后做下一步)。 例如:gpkey = https://download.postgresql.org/pub/repos/yum/RPM-GPG-KEY-PGDG-14 b.选择您的版本,然后选择体系结构(您在此处需要RedHat),然后选择对应的操作系统版本 例如:14 ->redhat -> rhel-7-x86_64 复制该链接;把它填写到baseurl参数后面。 例如:baseurl = https://download.postgresql.org/pub/repos/yum/14/redhat/rhel-7-x86_64/
复制
5. 配置pgdg的yum源库(root用户才能执行此操作)。
使用您的首选方法将以下行添加到/etc/yum.repos.d/pgdg.repo文件中(如果要安装其他版本,请进行调整):
[pgdg14] name=PostgreSQL 14 for RHEL/CentOS7 - x86_64 gpgkey=https://download.postgresql.org/pub/repos/yum/RPM-GPG-KEY-PGDG-14 baseurl=https://download.postgresql.org/pub/repos/yum/14/redhat/rhel-7-x86_64/ enabled=1 gpgcheck=1
复制
6. 验证 Postgres v14 包是否可用。列出您刚刚配置的pgdg14的yum库中可用的包:
使用如下命令进行查看:
yum --disablerepo="*" --enablerepo="pgdg14" … postgresql14.x86_64 postgresql14-contrib.x86_64 postgresql14-devel.x86_64 postgresql14-docs.x86_64 …
复制
7. 删除现有的 python3.7版本,执行如下命令:
sudo yum remove python3
复制
8. 从amazon-linux-extras库安装python3.6:
在安装时,需要禁用amzn2-core库
如果安装时收到此错误,仍然无法安装’-contrib’,说明没有添加此参数 -disablerepo=amzn2-core:
具体命令如下:
sudo amazon-linux-extras enable python3 sudo yum clean metadata sudo yum install python3-3.6.* --disablerepo=amzn2-core Package matching python3-3.6.2-3.amzn2.0.3.x86_64 already installed. Checking for update. Nothing to do
复制
9. 使用 -contrib 安装 Postgres:
sudo yum install postgresql14 postgresql14-contrib
复制
10. 开始初始化数据库,进行配置并启动数据库。
cd /usr/pgsql-14/bin sudo ./postgresql-14-setup initdb sudo systemctl start postgresql-14
复制
11. 您现在可以自由地度过您的一天。我会给你留下ServerFault的这句话:
“我不确定这是否有帮助,但我在很大程度上已经放弃了亚马逊Linux,因为它太难让一些事情正常工作了。1 个
感谢杰夫·弗罗斯特帮助我找到自己的路。
1 – https://serverfault.com/questions/1081509/error-getting-the-correct-python3-dependency
最后修改时间:2022-06-08 12:59:45
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
外国CTO也感兴趣的开源数据库项目——openHalo
小满未满、
1985次阅读
2025-04-21 16:58:09
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
382次阅读
2025-04-15 14:48:05
QPlus V6.3 更新,新增PostgreSQL与PolarDB PG支持,OceanBase 容灾管理重磅上线
沃趣科技
204次阅读
2025-05-13 09:39:27
4月“墨力原创作者计划”获奖名单公布!
墨天轮编辑部
192次阅读
2025-05-13 16:21:59
中国PostgreSQL培训认证体系新增PGAI应用工程师方向
开源软件联盟PostgreSQL分会
191次阅读
2025-05-06 10:21:13
华象新闻 | PostgreSQL 18 Beta 1、17.5、16.9、15.13、14.18、13.21 发布
严少安
169次阅读
2025-05-09 11:34:10
PG生态赢得资本市场青睐:Databricks收购Neon,Supabase融资两亿美元,微软财报点名PG
老冯云数
160次阅读
2025-05-07 10:06:22
SQL 优化之 OR 子句改写
xiongcc
148次阅读
2025-04-21 00:08:06
告别老旧mysql_fdw,升级正当时
NickYoung
128次阅读
2025-04-29 11:15:18
PostgreSQL中文社区亮相于第八届数字中国峰会
PostgreSQL中文社区
118次阅读
2025-05-07 10:06:20