HCRM博客

如何在CentOS上安装PostgreSQL?

在 CentOS 上安装 PostgreSQL 是一个相对直接的过程,但需要遵循一系列步骤以确保成功安装和配置,以下是详细的指南:

更新系统

确保你的 CentOS 系统是最新的,打开终端并运行以下命令来更新系统软件包:

如何在CentOS上安装PostgreSQL?-图1
(图片来源网络,侵权删除)
sudo yum update y

2. 导入 PostgreSQL Yum 存储库

PostgreSQL 官方提供了一个 Yum 存储库,可以方便地在 CentOS 上安装和管理 PostgreSQL,根据你的 CentOS 版本(7 或 8),运行以下命令之一来导入存储库:

对于 CentOS 7:

  sudo yum install y https://download.postgresql.org/pub/repos/yum/reporpms/EL7x86_64/pgdgredhatrepolatest.noarch.rpm

对于 CentOS 8:

  sudo dnf install y https://download.postgresql.org/pub/repos/yum/reporpms/EL8x86_64/pgdgredhatrepolatest.noarch.rpm

安装 PostgreSQL

一旦存储库被导入,你可以安装 PostgreSQL 服务器和客户端软件包,以安装 PostgreSQL 12 为例:

sudo yum install y postgresql12 postgresql12server

初始化数据库

安装完成后,需要初始化数据库集群:

如何在CentOS上安装PostgreSQL?-图2
(图片来源网络,侵权删除)
sudo /usr/pgsql12/bin/postgresql12setup initdb

这将创建必要的数据库文件和目录结构。

5. 启动并启用 PostgreSQL 服务

启动 PostgreSQL 服务并将其设置为开机自启:

sudo systemctl start postgresql12
sudo systemctl enable postgresql12

修改默认用户密码

PostgreSQL 安装后会创建一个名为postgres 的默认用户,为了安全性,建议修改其密码:

sudo i u postgres
psql
ALTER USER postgres WITH PASSWORD 'your_new_password';
\q
exit

创建新用户和新数据库(可选)

你可以根据需要创建新用户和新数据库,并授予相应的权限:

CREATE USER newuser WITH PASSWORD 'newpassword';
CREATE DATABASE newdatabase;
GRANT ALL PRIVILEGES ON DATABASE newdatabase TO newuser;

配置远程访问(可选)

如果你需要从远程主机连接到你的 PostgreSQL 数据库,需要进行一些额外的配置:

如何在CentOS上安装PostgreSQL?-图3
(图片来源网络,侵权删除)

开放防火墙端口:

  sudo firewallcmd addport=5432/tcp permanent
  sudo firewallcmd reload

修改配置文件以允许远程连接:

编辑postgresql.conf 文件,将listen_addresses 设置为

  vi /var/lib/pgsql/12/data/postgresql.conf

找到并修改(或添加)以下行:

  listen_addresses = '*'

编辑pg_hba.conf 文件以允许所有 IP 地址访问:

  vi /var/lib/pgsql/12/data/pg_hba.conf

添加以下行:

  host    all             all             0.0.0.0/0               md5

重启 PostgreSQL 服务:

  sudo systemctl restart postgresql12

验证安装

你可以通过尝试连接到 PostgreSQL 数据库来验证安装是否成功:

psql h your_server_ip U postgres d postgres

输入你在步骤 6 中设置的密码,如果连接成功,则说明 PostgreSQL 已正确安装和配置。

常见问题解答(FAQs)

Q1: PostgreSQL 服务无法启动怎么办?

A1: PostgreSQL 服务无法启动,首先检查是否有端口冲突,使用以下命令查看端口占用情况:

sudo netstat tuln | grep 5432

如果有其他进程占用了端口 5432,终止该进程或更改 PostgreSQL 的监听端口,检查 PostgreSQL 的日志文件(通常位于/var/lib/pgsql/12/data/pg_log/)以获取更多错误信息。

Q2: 如何更改 PostgreSQL 的监听端口?

A2: 要更改 PostgreSQL 的监听端口,你需要编辑postgresql.conf 文件并找到port 参数,将其设置为你想要的端口号,然后重启 PostgreSQL 服务:

vi /var/lib/pgsql/12/data/postgresql.conf

找到并修改以下行:

port = 5432        # 将其更改为你想要的端口号,5433

保存文件并重启 PostgreSQL 服务:

sudo systemctl restart postgresql12

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/19774.html

分享:
扫描分享到社交APP
上一篇
下一篇