В официальных репозиториях устанавливаются пакеты RHEL6, которые работают в Amazon Linux 2 (клон RHEL7). Вы можете столкнуться с адом зависимостей, если захотите установить расширение plperl позже, поскольку для этого требуется Perl 5.10, который доступен только для RHEL6:
---> Package postgresql96-plperl.x86_64 0:9.6.11-1PGDG.rhel6 will be installed
--> Processing Dependency: perl(:MODULE_COMPAT_5.10.1) for package: postgresql96-plperl-9.6.11-1PGDG.rhel6.x86_64
--> Finished Dependency Resolution
Error: Package: postgresql96-plperl-9.6.11-1PGDG.rhel6.x86_64 (pgdg96)
Requires: perl(:MODULE_COMPAT_5.10.1)
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
Слегка измененная версия репозитория Amazon Linux YUM может быть использована для установки правильной (el7) версии postgresql-server и, таким образом, plperl:
[pgdg96]
name=PostgreSQL 9.6 - Amazon Linux 2 - $basearch
baseurl=https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-$basearch
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG-96
[pgdg96-source]
name=PostgreSQL 9.6 - Amazon Linux 2 - $basearch - Source
failovermethod=priority
baseurl=https://download.postgresql.org/pub/repos/yum/srpms/9.6/redhat/rhel-7-$basearch
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG-96
[pgdg96-updates-testing]
name=PostgreSQL 9.6 - Amazon Linux 2 - $basearch
baseurl=https://download.postgresql.org/pub/repos/yum/testing/9.6/redhat/rhel-7-$basearch
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG-96
[pgdg96-source-updates-testing]
name=PostgreSQL 9.6 - Amazon Linux 2 - $basearch - Source
failovermethod=priority
baseurl=https://download.postgresql.org/pub/repos/yum/srpms/testing/9.6/redhat/rhel-7-$basearch
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG-96
Установленные пакеты:
$ rpm -qa | grep postgresql96
postgresql96-contrib-9.6.12-1PGDG.rhel7.x86_64
postgresql96-plperl-9.6.12-1PGDG.rhel7.x86_64
postgresql96-9.6.12-1PGDG.rhel7.x86_64
postgresql96-server-9.6.12-1PGDG.rhel7.x86_64
postgresql96-libs-9.6.12-1PGDG.rhel7.x86_64
L.E. Теперь Postgres 9.6 доступен в пакетах amazon-linux-extras:
# amazon-linux-extras | grep postgres
5 postgresql9.6 available [ =9.6.6 =9.6.8 ]
6 postgresql10 available [ =10 ]
Чтобы включить репозиторий, вы можете сделать amazon-linux-extras enable postgresql9.6
.
Я бы не рекомендовал использовать PGDG с AL2. Не говоря уже о том, что теперь он отказывается устанавливать на AL2, потому что не может найти /etc/redhat-release
. Вы все еще можете настроить файл репо для yum, но опять же, я не рекомендую это делать.
AL2 поставляется с amazon-linux-extras
инструмент. https://aws.amazon.com/amazon-linux-2/faqs/#Amazon_Linux_Extras
Включены PostgreSQL 9.6 и 10, а также PL / Perl.
Возможно, вам придется проделать немного больше работы, чтобы настроить сервер, но у вас не должно возникнуть проблем с зависимостями, поскольку эти пакеты предоставляются командой Amazon Linux.