在AWS Amazon Linux实例安装PostgreSQL时遭遇请求冲突问题求助
在Amazon Linux实例上解决PostgreSQL安装冲突问题
清理现有冲突包与缓存
- 执行
yum clean all清空yum缓存,避免旧包信息干扰 - 列出已安装的PostgreSQL相关包:
yum list installed | grep postgres,然后用yum remove -y [包名]卸载所有相关包,批量卸载可执行yum remove -y postgresql* - 检查yum源是否冲突:执行
yum repolist查看所有启用的源,如果发现多个PostgreSQL相关源(比如Amazon自带源和官方PG源),编辑对应源文件(路径一般是/etc/yum.repos.d/[源文件名].repo),将enabled=1改为enabled=0禁用冲突源
- 执行
配置正确的PostgreSQL官方源
以Amazon Linux 2安装PostgreSQL 15为例,执行以下命令添加官方源:tee /etc/yum.repos.d/pgdg.repo <<EOF [pgdg15] name=PostgreSQL 15 for RHEL/CentOS 7 - x86_64 baseurl=https://download.postgresql.org/pub/repos/yum/15/redhat/rhel-7-x86_64 enabled=1 gpgcheck=1 gpgkey=https://download.postgresql.org/pub/repos/yum/RPM-GPG-KEY-PGDG-15 EOF导入GPG密钥:
rpm --import https://download.postgresql.org/pub/repos/yum/RPM-GPG-KEY-PGDG-15
注:如果需要安装其他版本,把命令中的15替换为对应版本号即可,比如14、16重新尝试安装
- 更新yum缓存:
yum makecache - 安装指定版本的PostgreSQL:
yum install -y postgresql15-server postgresql15 - 若仍有冲突,可尝试放宽检查限制:
yum install -y postgresql15-server postgresql15 --setopt=strict=0,或者用yum deplist postgresql15-server查看具体依赖冲突的包,手动卸载冲突依赖后再安装
- 更新yum缓存:
验证安装完成
- 初始化数据库:
/usr/pgsql-15/bin/postgresql-15-setup initdb - 启动服务并设置开机自启:
systemctl start postgresql-15 systemctl enable postgresql-15 - 检查服务状态:
systemctl status postgresql-15,出现active (running)即为成功
- 初始化数据库:
内容的提问来源于stack exchange,提问作者Ladipo
相关产品推荐
相关产品推荐

