
Linux系统下Pgsql的安装
5星
- 浏览量: 0
- 大小:None
- 文件类型:DOCX
简介:
本教程详细介绍了在Linux环境下安装PostgreSQL(Pgsql)的过程,包括准备工作、安装步骤及配置要点。适合初学者快速上手。
### Linux系统pgsql安装与主从复制搭建指南
#### 一、环境准备与主机列表
在进行PostgreSQL(简称为pgsql)的安装与主从复制搭建之前,首先需要明确所涉及的主机及其角色:
- **主机地址**: 10.52.6.31
- **角色**: 主机 (Master)
- **主机地址**: 10.52.6.32
- **角色**: 从机 (Slave)
#### 二、具体搭建步骤
##### 1. 创建用户并设置密码
创建PostgreSQL系统所需的用户,并为其设置初始密码。
- **命令**: `useradd postgres`
- **命令**: `passwd postgres` (设定密码)
##### 2. 创建必要目录并赋予权限
为存储数据和日志文件,需要在Linux中创建相应的目录结构并分配适当的权限。
- **命令**: `mkdir -p datapgsql`
- **命令**: `mkdir -p datapgsql_logspgsql.log`
- **命令**: `chown -R postgres:postgres data`
这些目录将用于存储PostgreSQL的数据文件和日志文件。
##### 3. 安装PostgreSQL软件包
安装必要的postgresql14相关软件包,包括基础库、服务端及贡献模块等:
- **命令**: `sudo rpm -ivh postgresql14-libs-14.6-1PGDG.rhel7.x86_64.rpm`
- **命令**: `sudo rpm -ivh postgresql14-14.6-1PGDG.rhel7.x86_64.rpm`
- **命令**: `sudo rpm -ivh postgresql14-server-14.6-1PGDG.rhel7.x86_64.rpm`
- **命令**: `sudo rpm -ivh postgresql14-contrib-14.6-1PGDG.rhel7.x86_64.rpm`
注意,`postgresql14-contrib` 软件包提供了额外的功能,但其依赖于Python 3.6组件。如果环境中没有安装Python 3.6,则可以选择不安装这个包。
##### 4. 切换用户
切换到postgres用户以执行后续操作:
- **命令**: `su postgres`
这一步是为了确保后续的操作都是以`postgres`用户的身份执行的。
##### 5. 初始化数据库
初始化PostgreSQL的数据目录,为启动服务做准备:
- **命令**: `usrpg14bininitdb -D datapgsql`
此步骤会创建一个初始的数据库环境。
##### 6. 启动数据库服务
使用以下命令启动PostgreSQL服务,并指定日志文件的位置以记录运行状态:
- **命令**: `usrpg14binpg_ctl -D datapgsql -l datapgsql_logspgsql.log start`
此命令启动了PostgreSQL服务。
##### 7. 禁用防火墙
为确保数据库可以监听端口并接受外部连接,需要禁用或配置防火墙:
- **命令**: `systemctl stop firewalld.service`
- **命令**: `systemctl disable firewalld.service`
##### 8. 修改主库配置文件
为了支持主从复制功能,需要修改一些关键的参数设置。
- **文件路径**: `datapgsqlpostgresql.conf`
- **配置项**:
- `listen_address = 10.52.6.31`
- `port = 5432`
- `max_connections = 1000`
- `wal_level = replica`
- `archive_mode = on`
- `archive_command = cd .`
- `max_wal_senders = 10`
- `wal_keep_size = 256 MB`
- `wal_sender_timeout = 60`
##### 9. 修改主库访问控制文件
配置允许从机通过指定用户进行数据同步操作。
- **文件路径**: `datapgsqlpg_hba.conf`
- **添加配置**:
- `host replication repuser 10.52.6.32/32 md5`
##### 10. 重启主库服务
重新启动数据库以应用新的设置:
- **命令**: `usrpg14binpg_ctl -D datapgsql -l datapgsql_logspgsql.log restart`
这一步确保新配置生效。
##### 11. 创建用于主从同步的用户
创建一个拥有复制权限的用户,以便之后进行数据同步操作。
- **命令**: `psql -h 127.0.0.1 -p 5432`
- **命令**: `create role repuser login encrypted password repuser123 replication`
##### 12. 在从机上执行同步数据操作
将主库的数据
全部评论 (0)


