阿里云服务器Alibaba Cloud Linux 3安装PostgreSQL

一、查看系统版本

[root@iZuf6ebio2vmvmyg07fqsfZ ~]# cat /etc/redhat-release
Alibaba Cloud Linux release 3 (Soaring Falcon)

二、检查PG数据库是否已安装

运行以下命令,若已安装会显示版本信息:

psql --version

若提示 command not found,则未安装。

三、通过 YUM/DNF 安装

3.1 添加 PostgreSQL 官方仓库​​​​

Alibaba Cloud Linux 3 默认仓库可能不包含最新版 PostgreSQL,需手动添加官方仓库:

sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm

3.2 ​​安装 PostgreSQL​​

选择所需版本(如 PostgreSQL 15):

sudo dnf install -y postgresql15-server postgresql15-contrib

3.3 如果这一步报错

PostgreSQL common RPMs for RHEL / Rocky / AlmaLinux 3 - x86_64                                                                100  B/s | 146  B     00:01    
Errors during downloading metadata for repository 'pgdg-common':
  - Status code: 404 for https://download.postgresql.org/pub/repos/yum/common/redhat/rhel-3-x86_64/repodata/repomd.xml (IP: 147.75.85.69)
Error: Failed to download metadata for repo 'pgdg-common': Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried

表示 PostgreSQL 仓库 URL 中的 $releasever 变量被解析为 3,而官方仓库仅支持 8。
Alibaba Cloud Linux 3 基于 RHEL 8 的软件生态,但系统的 releasever 值(通过 rpm -E %rhel 查看)为 3,导致仓库路径错误。

3.3.1 ​​编辑 PostgreSQL 仓库文件

sudo vim /etc/yum.repos.d/pgdg-redhat-all.repo

3.3.2 ​​替换所有 $releasever 为 8

:%s/\$releasever/8/g

3.3.3 ​​:wq保存退出后重试

sudo dnf install -y postgresql15-server postgresql15-contrib

3.4 初始化数据库

sudo /usr/pgsql-15/bin/postgresql-15-setup initdb

3.5 启动服务并设置开机自启

sudo systemctl enable postgresql-15
sudo systemctl start postgresql-15

四、配置 PostgreSQL​

4.1 ​修改远程访问权限

编辑配置文件:

sudo vim /var/lib/pgsql/15/data/postgresql.conf

修改以下参数:

listen_addresses = '*'
port = 5432

4.2 ​设置客户端访问规则

修改 pg_hba.conf:

sudo vim /var/lib/pgsql/15/data/pg_hba.conf

添加一行:

host    all    all    0.0.0.0/0    md5

4.3 ​重启服务生效

sudo systemctl restart postgresql-15

五、验证安装​

5.1 登录数据库

sudo -u postgres psql

5.2 查看版本

在 PostgreSQL 命令行中执行:

SELECT version();

5.3 修改密码(重要,不改会被攻击)

\password postgres

5.4 开放端口

阿里云控制台开放5432端口通行

posted @ 2025-04-13 09:37  火炬冬天  阅读(228)  评论(0)    收藏  举报