it-swarm.com.ru

Установка PostgreSQL Client v10 в AWS Amazon Linux (EC2) AMI

Я успешно запустил новый экземпляр AWS RDS PostgreSQL v10 и мне нужно установить клиент PostgreSQL v10 на экземпляр Amazon Linux EC2.

Я попытался установить его с yum, но он не может найти пакет для v10:

[[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

Ранее мне удалось установить клиент PostgreSQL v9.5 с:

[[email protected] ~]$ Sudo yum install -y postgresql95

Я думаю, мне нужно добавить репозиторий Postgres yum, как указано в https://www.postgresql.org/download/linux/redhat/ . Но какую платформу я должен выбрать для Amazon Linux? Красная шляпа?

13
Ismar Slomic

Пакеты/репозитории, предназначенные для работы с RedHat, будут работать и на Amazon Linux, Amazon Linux - это версия RHEL с минимальной установкой. Вы можете столкнуться с проблемами совместимости, если вы выберете старую версию Amazon Linux (Amazon linux 1) для следующих шагов, в противном случае она должна нормально работать в последней версии Amazon Linux 2.

Проверьте версию Amazon Linux

[ec2-user ~]$ cat /etc/system-release
Amazon Linux release 2.0 (2017.12) LTS Release Candidate

Установите RHEL 7 yum репозиторий для PostgreSQL

[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

[ec2-user ~]$ Sudo yum install -y postgresql10
[ec2-user ~]$ psql --version
psql (PostgreSQL) 10.3

Узнайте больше о Amazon Linux 2

Примечание! Amazon Linux 2 обеспечивает установку дополнительных пакетов через Amazon Linux Extras Repository (Amazon-linux-extras). Поскольку postgresql10 еще не доступен, добавление дополнительного репозитория yum является единственным решением на сегодняшний день.

30
Haneef Mohammed

Адаптация ответа Ханифа Мохаммеда для Amazon Linux 1 (протестировано 2018.03):

Перейдите на страницу Postgres repositories и найдите URL для «Red Hat Enterprise Linux 6 - x86_64». Установите репозитории PG и исправьте записи, заменив '$ releasever' на '6.9' (или 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"

Вторая часть такая же:

[ec2-user ~]$ Sudo yum install -y postgresql10
[ec2-user ~]$ psql --version
psql (PostgreSQL) 10.3
9
steamer25

Sudo Amazon-linux-extras установить postgresql10

6
johnthuss

Поскольку ни один из предыдущих ответов не помог мне, я добавляю решение, позволяющее мне установить клиент postgresql10. В наших конвейерах мы используем VERSION="2018.03" из Amazon Linux AMI.

Здание из источника:

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

Новый пакет должен быть установлен со всеми его исполняемыми файлами здесь: /usr/local/pgsql/bin

Теперь имейте в виду, что команды psql, pg_dump и т.д. Все еще указывают на старую версию клиента psql. Вы можете запустить с полными путями к исполняемому файлу (/usr/local/pgsql/bin/psql) или добавить новый каталог в начале вашего $PATH, чтобы система сначала проверила его:

Отредактируйте ~/.bash_profile, добавив это в конце:

export PATH="/usr/local/pgsql/bin:$PATH"

Затем запустите:

source ~/.bash_profile

Теперь все должно быть готово:

[[email protected] ~]$ psql --version
psql (PostgreSQL) 10.4
3
arudzinska

Я решил проблему, запустив 

yum clean all

до 

yum install -y postgresql10 

на Amazon Linux

2
Ryan Weaver

для v11 на Amazon Linux 2 мне пришлось сделать 

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"
1
user459911