Alibaba Cloud Linux 安装 PostgreSQL 数据库

记录Alibaba Cloud Linux YUM源安装软件失败提示common RPMs for RHEL/CentOS 3 - x86_64

准备

Alibaba Cloud Linux 版本

# lsb_release -a
LSB Version:	:core-4.1-amd64:core-4.1-noarch
Distributor ID:	AlibabaCloud
Description:	Alibaba Cloud Linux release 3 (Soaring Falcon)
Release:	3
Codename:	SoaringFalcon

PostgreSQL 版本

version14
platformRed Hat Enterprise, CentOS, Scientific or Oracle version 6
architectureX86_64

Linux downloads (Red Hat family)

The Red Hat family of distributions includes:

  • Red Hat Enterprise Linux
  • Rocky Linux
  • CentOS (7 and 6 only)
  • Fedora
  • Oracle Linux

安装步骤

更新yum

yum update -y

安装RPM

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

处理错误

在阿里云帮助文档中找到下面内容

第三方DNF源仅适配CentOS 8发行版,而在Alibaba Cloud Linux 3中,系统的releasever值与CentOS 8不同,导致DNF解析后的地址无效,从而下载RPM包失败。DNF安装docker-ce时,首先会从系统中获取版本号,即releasever值,然后替换掉相应源baseurl中对应的$releasever变量,之后DNF从替换后的baseurl中获取相关数据。由于CentOS 8的releasever值为8,而Alibaba Cloud Linux 3系统的releasever值为3,因此解析后的baseurl并非预期地址,DNF便无法从这个错误的地址中安装软件包。

$ yum install -y postgresql14-server

PostgreSQL common RPMs for RHEL/CentOS 3 - x86_64                                                                                56  B/s | 146  B     00:02
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: 217.196.149.55)
错误:为 repo 'pgdg-common' 下载元数据失败 : Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried

第一种处理方式

cd /etc/yum.repos.d # 找到postgres的.repo, 复制文件名称

vim /etc/yum/pluginconf.d/releasever-adapter.conf 

# 如果没有pluginconf.d 使用下面命令
dnf install dnf-plugin-releasever-adapter --repo alinux3-plus

# 将上面复制的repo文件名添加到include后面,用 `,` 隔开
[main]
enabled=1

[releasevermapping]
release_dict={'2.1903' : '7', '3' : '8'}

[reposlist]
include=docker-ce.repo, epel.repo, pgdg-redhat-all.repo

第二种临时处理方式

上面这种我没有成功,但是docker-ce.repo是可以的,下面是临时处理方式

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

# Shift + :

%s/$releasever/8/g

安装数据库

yum install -y postgresql14-server

初始化数据库

第一次尝试出错了

如果使用service得安装 yum install iptables-services,如果下载失败, 就将/etc/yum.repos.d/AliYun.repo里面cloud.aliyuncs修改为aliyun ,但是建议不要这么操作,直接使用下面的方式处理。

# service postgresql-14 initdb
service 命令只支持基础 LSB 动作(即 start、stop、restart、try-restart、reload、force-reload、status)。其他动作请使用 systemctl。

第二次尝试

看了下官方说明

Post-installation

Due to policies for Red Hat family distributions, the PostgreSQL installation will not be enabled for automatic start or have the database initialized automatically. To make your database installation complete, you need to perform the following steps, based on your distribution:

For RHEL / Rocky Linux / CentOS / SL / OL 7, 8 Or Fedora 34 And Later Derived Distributions:

postgresql-setup --initdb
systemctl enable postgresql.service
systemctl start postgresql.service

postgresql-14-setup initdb    这里我使用的pgsql-14,所以大家得改成自己对应的数据库版本
systemctl enable postgresql-14.service
systemctl start postgresql-14.service

设置密码

# su postgres
bash-4.4$ psql postgres
psql (11.15)

postgres=# \password postgres

创建数据用户和数据库

创建用户
postgres=# create user [dbuser] with password '[****]';
CREATE ROLE

创建用户数据库
postgres=# create database [database] owner [dbuser];

给用户数据库权限
postgres=# grant all privileges on database [database] to [dbuser];

创建linux用户并用验证数据

# adduser dbuser
# passwd dbuser
更改用户 dbuser 的密码 。
新的 密码:
重新输入新的 密码:
# su - ivo
$ psql -d ivo
psql (11.15)
Type "help" for help.

ivo=>

安装工作全部完成了

开启远程连接

生产环境最好不要开启!!!

修改监听

# 修改配置文件
vim /var/lib/pgsql/14/data/postgresql.conf
# yy  p  复制一行 #listen_addresses = 'localhost'
# 修改为 listen_addresses = '*'

修改允许访问的IP

vim /var/lib/pgsql/14/data/pg_hba.conf
# 添加下面配置
host  all  all 0.0.0.0/0 md5
# 重启数据库
systemctl restart postgresql-14.service

记得去配置下安全组规则,数据库端口号默认是5432,在postgresql.conf修改。

其他

这里我改过默认的端口号, 连接的时候要加上 -p

psql -d database -p [port]

  1. PostgreSQL 官方网站
  2. 搭建PostgreSQL主从架构
  3. Alibaba Cloud Linux 3系统中使用docker-ce、epel等第三方DNF(YUM)源安装软件失败
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值