在 CentOS 上安装 PostgreSQL 常见有三种方式,最推荐的是 官方仓库安装,版本新、稳定、好维护。下面按常见场景一步步来。
cat /etc/centos-release
如果你需要其他版本(12/13/14/15),把
16换成对应数字即可
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
⚠️ CentOS 8 / Stream
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo yum install -y postgresql16-server postgresql16-contrib
sudo /usr/pgsql-16/bin/postgresql-16-setup initdb
sudo systemctl enable postgresql-16
sudo systemctl start postgresql-16
sudo systemctl status postgresql-16
sudo -i -u postgres
psql
ALTER USER postgres PASSWORD 'StrongPassword';
退出:
\q
postgresql.confsudo vi /var/lib/pgsql/16/data/postgresql.conf
修改:
listen_addresses = '*'
pg_hba.confsudo vi /var/lib/pgsql/16/data/pg_hba.conf
添加:
host all all 0.0.0.0/0 md5
sudo systemctl restart postgresql-16
sudo firewall-cmd --add-port=5432/tcp --permanent
sudo firewall-cmd --reload
sudo yum remove postgresql16*
sudo rm -rf /var/lib/pgsql
systemctl list-units | grep postgres
ss -lntp | grep 5432
yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
yum install -y postgresql16-server postgresql16-contrib
/usr/pgsql-16/bin/postgresql-16-setup initdb
systemctl enable --now postgresql-16
如果你告诉我:
我可以给你 更精确、安全 的配置方案。