CentOS上安装PostgreSQL的详细指南
一、简介
PostgreSQL 是一种功能强大的开源关系型数据库管理系统,广泛应用于各种领域,它提供了诸如事务处理、并发控制和数据完整性等高级功能,因此深受开发者和企业的欢迎,本指南将逐步引导您在 CentOS 上安装 PostgreSQL,以便您充分利用其众多优势。
二、CentOS上使用PostgreSQL的优势
1、数据完整性:PostgreSQL 支持强大的数据完整性检查,可以确保您的数据始终保持一致和准确。
2、并发处理:通过多版本并发控制(MVCC),PostgreSQL 可以高效处理大量并发事务而不产生锁定冲突。
3、扩展性:PostgreSQL 的架构允许用户创建自己的数据类型、函数和操作符,从而满足特定业务需求。
4、标准兼容性:PostgreSQL 遵循 SQL 标准,并支持诸如窗口函数、联合和常量表表达式等高级 SQL 功能。
5、开放源代码:作为开源软件,PostgreSQL 提供了灵活的定制和扩展能力,且没有许可费用。
三、安装步骤
1. 更新系统
确保您的 CentOS 系统是最新的,打开终端并运行以下命令:
sudo yum update y
2. 添加 PostgreSQL Yum 存储库
为了便于安装和管理 PostgreSQL,我们需要先添加官方提供的 PostgreSQL Yum 存储库,执行以下命令:
For CentOS 8 sudo dnf install https://download.postgresql.org/pub/repos/yum/reporpms/EL8x86_64/pgdgredhatrepolatest.noarch.rpm 对于 CentOS 7 sudo yum install y https://download.postgresql.org/pub/repos/yum/12/redhat/rhel7x86_64/pgdgredhatrepolatest.noarch.rpm
3. 安装 PostgreSQL
根据需要选择安装的版本,这里以安装 PostgreSQL 12 为例:
For CentOS 8 sudo dnf install y postgresql12 postgresql12server For CentOS 7 sudo yum install y postgresql12 postgresql12server
4. 初始化数据库
安装完成后,需要初始化数据库集群,执行以下命令:
sudo /usr/pgsql12/bin/postgresql12setup initdb
5. 启动 PostgreSQL 服务
启动并设置 PostgreSQL 服务开机自启:
sudo systemctl start postgresql12 sudo systemctl enable postgresql12
6. 设置默认 PostgreSQL 用户密码
切换到postgres
用户并设置密码:
sudo i u postgres psql \password postgres
按照提示输入并确认新密码。
7. 创建新用户和新数据库(可选)
退出psql
提示符后,您可以根据需要创建新用户和新数据库:
sudo i u postgres psql CREATE USER myuser WITH PASSWORD 'mypassword'; CREATE DATABASE mydatabase; GRANT ALL PRIVILEGES ON DATABASE mydatabase TO myuser; \q exit
8. 配置远程访问(可选)
如果需要远程访问 PostgreSQL,编辑pg_hba.conf
文件:
vim /var/lib/pgsql/12/data/pg_hba.conf
找到类似以下的行并修改:
IPv4 local connections: host all all 0.0.0.0/0 md5
保存并重启 PostgreSQL 服务:
sudo systemctl restart postgresql12
确保防火墙开放相应的端口:
sudo firewallcmd permanent addservice=postgresql sudo firewallcmd reload
四、FAQs
1、Q: 如何更改 PostgreSQL 监听的端口号?
A: 编辑postgresql.conf
文件,找到port
参数并设置为所需的端口号,将端口改为 5433:
port = 5433 ``` 然后重启 PostgreSQL 服务。 2、Q: PostgreSQL 忘记 superuser 密码怎么办? A: 可以通过以下步骤重置密码:
sudo systemctl stop postgresql12
sudo i u postgres
psql
ALTER USER postgres WITH PASSWORD 'newpassword';
\q
exit
sudo systemctl start postgresql12
通过以上步骤,您已经成功在 CentOS 上安装并配置了 PostgreSQL,希望这篇指南对您有所帮助!