如何在Amazon Linux AMI中安装Postgresql 11?

时间:2019-07-31 12:21:50

标签: linux postgresql amazon-web-services

如何在Elastic Beanstalk上的Amazon Linux 2018.03(特别是不是AMZ Linux 2)上安装Postgresql 11?

我想安装一个软件包,而不是手动构建二进制文件。如果自动缩放机器启动并且必须构建整个PG二进制文件,则在t2 / t3.micro上花费的时间会明显更长。

我正在寻找pg_dump

[编辑]更详细些,解释为什么建筑不适用于我的情况。

5 个答案:

答案 0 :(得分:7)

sudo yum update
sudo amazon-linux-extras install postgresql11

答案 1 :(得分:4)

关键是PGDG对Amazon Linux的yum since 9.3不再可用,因此必须安装各个组件。

  # Remove old Postgres
  yum remove -y postgresql postgresql-server

  # Install Postgres 11
  yum install -y https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-6-x86_64/postgresql11-libs-11.4-1PGDG.rhel6.x86_64.rpm
  yum install -y https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-6-x86_64/postgresql11-11.4-1PGDG.rhel6.x86_64.rpm
  yum install -y https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-6-x86_64/postgresql11-server-11.4-1PGDG.rhel6.x86_64.rpm

[编辑] 将上方每个链接中的11.4替换为https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-6-x86_64/

所需的任何版本

答案 2 :(得分:1)

好像没有针对Amazon Linux的PostgreSQL 11预先构建的二进制发行版。我解决它的方法是从源代码构建:

wget https://ftp.postgresql.org/pub/source/v11.5/postgresql-11.5.tar.gz

tar zxvf postgresql-11.5.tar.gz

cd postgresql-11.5

./configure --without-readline

make

make install

默认情况下,它将pg_dump安装到/usr/local/pgsql/bin/pg_dump中。

答案 3 :(得分:1)

这是@nitsujri答案的扩展版本。我无法评论他们的评论,因此我将在此处创建新答案。

安装先决条件:

      <script>
        if (window.location.href.indexOf("catid") > -1) {
        {
        document.getElementById("PostingAd").onclick HERE == window.location.href = 'https://www.example.net/index.php?value1value2value3&.catid';
        }</script>

下载PostgreSQL源代码并安装发行版:

sudo yum install readline-devel
sudo yum group install "Development Tools"

将此行添加到您的wget https://ftp.postgresql.org/pub/source/v11.5/postgresql-11.5.tar.gz tar zxvf postgresql-11.5.tar.gz cd postgresql-11.5 ./configure make sudo make install 中。之后,重新登录到EC2实例。

~/.bashrc

答案 4 :(得分:-2)

我相信您需要使用安装在pg_dump上的图像来生成自己的图像(使用@nitsujri的说明),并配置Beanstalk来使用该图像。

如果您在Beanstalk创建机器之后手动执行此操作,那么您将失去Beanstalk的所有优势,而不仅仅是普通的EC2。