Ich habe die neue AWS RDS-Instanz PostgreSQL v10 erfolgreich gestartet und muss den PostgreSQL v10-Client auf der Amazon Linux EC2-Instanz installieren.
Ich habe versucht, es mit yum
zu installieren, aber es kann das Paket für v10 nicht finden:
[[email protected] ~]$ Sudo yum install -y postgresql10
Loaded plugins: priorities, update-motd, upgrade-helper
amzn-main | 2.1 kB 00:00:00
amzn-updates | 2.5 kB 00:00:00
No package postgresql110 available.
Error: Nothing to do
Zuvor konnte ich den PostgreSQL-Client v9.5 installieren mit:
[[email protected] ~]$ Sudo yum install -y postgresql95
Ich schätze, ich muss Postgres yum Repository hinzufügen, wie in https://www.postgresql.org/download/linux/redhat/ erwähnt. Welche Plattform sollte ich für Amazon Linux wählen? Roter Hut?
Pakete/Repos, die für RedHat ausgelegt sind, funktionieren auch unter Amazon Linux. Amazon Linux ist eine Minimalinstallationsversion von RHEL. Es kann zu Kompatibilitätsproblemen kommen, wenn Sie für die folgenden Schritte eine alte Version von Amazon Linux (Amazon linux 1) auswählen. Andernfalls sollte dies in der neuesten Version von Amazon Linux 2 problemlos funktionieren.
Amazon Linux-Version überprüfen
[ec2-user ~]$ cat /etc/system-release
Amazon Linux release 2.0 (2017.12) LTS Release Candidate
RHEL 7 yum repo für PostgreSQL installieren
[ec2-user ~]$ Sudo yum install -y https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-redhat10-10-2.noarch.rpm
[ec2-user ~]$ Sudo sed -i "s/rhel-\$releasever-\$basearch/rhel-latest-x86_64/g" "/etc/yum.repos.d/pgdg-10-redhat.repo"
PostgreSQL Client v10 installieren
[ec2-user ~]$ Sudo yum install -y postgresql10
[ec2-user ~]$ psql --version
psql (PostgreSQL) 10.3
Lesen Sie mehr über Amazon Linux 2
Hinweis! Amazon Linux 2 bietet zusätzliche Paketinstallationen über Amazon Linux Extras Repository (Amazon-linux-extras
). Da postgresql10 noch nicht verfügbar ist, ist das Hinzufügen von zusätzlichem Yum-Repo die einzige Lösung pro Tag.
Anpassung von Haneef Mohammeds Antwort für Amazon Linux 1 (getestet am 2018.03):
Gehen Sie auf die Postgres Repository-Seite , und holen Sie sich die URL für 'Red Hat Enterprise Linux 6 - x86_64'. Installieren Sie die PG-Repos und ändern Sie die Einträge. Ersetzen Sie '$ releasever' durch '6.9' (oder newer ?):
[ec2-user ~]$ Sudo yum install -y https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-6-x86_64/pgdg-redhat10-10-2.noarch.rpm
[ec2-user ~]$ Sudo sed -i "s/rhel-\$releasever-\$basearch/rhel-6.9-x86_64/g" "/etc/yum.repos.d/pgdg-10-redhat.repo"
Der zweite Teil ist derselbe:
[ec2-user ~]$ Sudo yum install -y postgresql10
[ec2-user ~]$ psql --version
psql (PostgreSQL) 10.3
Sudo Amazon-Linux-Extras installieren postgresql10
Ab dem 25. Mai 2019 funktionierte die folgende direkte RPM-Installation für Amazon Linux 1 2018.03 (neueste Version der Beanstalk-Plattform), um PostgreSQL Client 10.7 zu installieren:
Sudo rpm -ivh --force https://yum.postgresql.org/testing/10/redhat/rhel-6-x86_64/postgresql10-libs-10.7-2PGDG.rhel6.x86_64.rpm
Sudo rpm -ivh --force https://yum.postgresql.org/testing/10/redhat/rhel-6-x86_64/postgresql10-10.7-2PGDG.rhel6.x86_64.rpm
Da keine der vorherigen Antworten für mich funktioniert hat, füge ich eine Lösung hinzu, mit der ich den postgresql10-Client installieren kann. Wir verwenden VERSION="2018.03"
von Amazon Linux AMI in unseren Pipelines.
Gebäude von der Quelle:
Sudo yum install -y gcc readline-devel zlib-devel
wget https://ftp.postgresql.org/pub/source/v10.4/postgresql-10.4.tar.gz
tar -xf postgresql-10.4.tar.gz
cd postgresql-10.4
./configure
make -C src/bin
Sudo make -C src/bin install
make -C src/include
Sudo make -C src/include install
make -C src/interfaces
Sudo make -C src/interfaces install
make -C doc
Sudo make -C doc install
Das neue Paket sollte mit allen ausführbaren Dateien hier installiert werden: /usr/local/pgsql/bin
Beachten Sie nun, dass die Befehle psql
, pg_dump
usw. immer noch auf die alte Version des psql-Clients verweisen. Sie können mit den vollständigen ausführbaren Pfaden (/usr/local/pgsql/bin/psql
) laufen oder das neue Verzeichnis am Anfang Ihres $PATH
voranstellen, damit das System es zuerst nachschlagen kann:
Bearbeiten Sie ~/.bash_profile
und fügen Sie dies am Ende hinzu:
export PATH="/usr/local/pgsql/bin:$PATH"
Dann renne:
source ~/.bash_profile
Jetzt sollte alles fertig sein:
[[email protected] ~]$ psql --version
psql (PostgreSQL) 10.4
PGDG repo ist für Amazon Linux nicht mehr verfügbar. Sie können also Amazon Repo verwenden.
Amazon-linux-extras install postgresql10 vim epel -y
Oder folgen Sie diesem Artikel
https://installvirtual.com/install-postgresql-10-on-Amazon-ec2/
Ich habe das Problem gelöst, indem ich lief
yum clean all
vor
yum install -y postgresql10
bei Amazon Linux
für v11 unter Amazon Linux 2 musste ich das tun
yum -y install https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/pgdg-centos11-11-2.noarch.rpm
sed -i "s/rhel-\$releasever-\$basearch/rhel-7-x86_64/g" "/etc/yum.repos.d/pgdg-11-centos.repo"
Dies ist meine 2019 Lösung:
Mach einfach
Sudo Amazon-linux-extras install postgresql9.6
Sie sollten es nicht von einer externen Quelle herunterladen müssen, da es Ihnen standardmäßig von Amazon zur Verfügung gestellt wird. Alles, was Sie tun müssen, ist es zu installieren.
Die anderen Lösungen haben bei mir nicht funktioniert und ich habe viel Zeit damit verbracht, meinen Kopf gegen die Wand zu schlagen, um herauszufinden, warum.
Und überraschenderweise erhalten Sie, obwohl Sie psql9.6 installieren, Version 10.
Installation von PSql10.7 (20.08.2013)
Entfernen Sie alle älteren Psql-Clients und führen Sie die folgenden Schritte aus:
wget https://yum.postgresql.org/10/redhat/rhel-6.9-x86_64/postgresql10-libs-10.7-1PGDG.rhel6.x86_64.rpm
wget https://yum.postgresql.org/10/redhat/rhel-6.9-x86_64/postgresql10-10.7-1PGDG.rhel6.x86_64.rpm
Sudo rpm -ivh postgresql10-libs-10.7-1PGDG.rhel6.x86_64.rpm
Sudo rpm -ivh postgresql10-10.7-1PGDG.rhel6.x86_64.rpm