Postgres主从模式部署

:2024年08月01日 IT那活儿
分享到:

本文介绍了如何在CentOS系统中安装和配置PostgreSQL。首先需要安装依赖包,然后下载并解压PostgreSQL的离线包,接着创建并安装PostgreSQL的安装目录。接着,生成Makefile并编译安装。

一、准备工作

首先安装依赖包:

yum -y install   readline-devel zlib-devel

二、部署工作

2.1 安装postgresql

将postgresql的包上传到(/tmp)文件夹中进行解压。

postgresql的离线包到官方网站下载:https://www.postgresql.org/

tar -xzvf postgresql-13.3.tar.gz

2.2 创建postgresql的安装目录

mkdir /data01/postgresql //data01目录下创建postgresql

2.3 生成makefile

需要到解压的目录下操作:

./configure --prefix=/data01/postgresql //需要到解压的目录下操作

2.4 编译安装

在解压的目录下执行:

make && make install //在解压的目录下执行

2.5 安装工具集

PS:进入到解压后的目录下的contrib文件夹。

cd /data01/postgresql-11.7/contrib //进入到解压后的目录下的contrib文件夹

make && make install

2.6 创建postgresql用户

groupadd postgres

useradd -g postgres postgres

为了安全考虑,postgresql不允许使用root用户操作数据库,我们在系统中为了使用postgresql添加一个用户postgres:

也可以是其他用户名,但是习惯上大家都是创建postgres用户作为数据库的超级用户。

初始化数据库时,就以这个用户作为数据库的超级用户。

2.7 修改data目录的用户为postgres

cd /data01/postgresql //进入到安装的postgresql目录

mkdir data //在postgresql目录下创建data文件夹

chown -R postgres:postgres /data01/postgresql/data

2.8 修改环境变量

su - postgres

vim /home/postgres/.bash_profile

添加环境变量:

export PGHOME=/data01/postgresql

export PGDATA=/data01/postgresql/data

export PATH=$PGHOME/bin:$PATH

export MANPATH=$PGHOME/share/man:$MANPATH

export LANG=en_US.utf8

export DATE=`date +"%Y-%m-%d %H:%M:%S"`

export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH

alias rm='rm -i'

alias ll='ls -lh'

保存后使环境变量立即生效,否则initdb命令会找不到:

source /home/postgres/.bash_profile

2.9 初始化数据库

initdb -D /data01/postgresql/data/

djEvbXU5ekRaMEZXZF9XR0ZjVUZGMHZyZW15elo1MVlMT1F5eTBpR0xjbVU5eUdEWEh0Q09lV2lfcGFkS2pTTTlybmNlS1k4MlpDSF9GaXNpRFV2aDZhYzFfNl9ya2oxaXk1bVZqR01XNzhoSjQ9.jpg

2.10 启动数据库

su - postgres

cd /home/postgres //logfile需要在postgres的用户目录下创建

pg_ctl -D /data01/postgresql/data/ -l logfile start

查看5432端口是否已经启动:

netstat -nltp|grep 5432

2.1-2.10,主库备库服务器上都要操作。

2.11 主库修改/data01/postgresql/data/pg_hba.conf文件,允许备库IP通过复制用户访问数据库

djEvbE1JVGtldUNKeHNzOUkzRkNhbGFUZHVmWmhSMDRDRjZPdVlHdTJMTnVIUWQ4aHNjNmNraDYxUHVqZEo3T2FUaG1zSGdONzVvNjdndTFLa1FETkFwV0ZfNl9ya2oxaXk1bVZqR01XNzhoSjQ9.jpg

2.12 主库修改/data01/postgresql/data/postgresql.conf

listen_addresses= '*'

wal_level = replica

max_connections = 10000

archive_mode = on

archive_command = 'cp %p /data01/postgresql/archive/%f'

max_wal_senders= 10

wal_keep_size = 1000 # in megabytes; 0 disables

max_slot_wal_keep_size = 10 # in megabytes; -1 disables

wal_sender_timeout = 120s # in milliseconds; 0 disables

hot_standby = on

2.13 修改完后重启主库服务

pg_ctl -D /data01/postgresql/data/ -l logfile restart

2.14 备库使用pg_basebackup命令将主节点的data同步过来

pg_basebackup -h 192.XXX.XXX.208 -p 5432 -U postgres -P -X stream -D /data01/postgresql/data -R


djEvQ1ZHd2NlUTlZM1F0RjlHbkxWaGdMNG1SbEFpdW12UThkTG5lTTUwTGYtZVZVNTZvY0VfTk44Ml9jZEJ4azFIdFJiaW9TZ3NQQWhNYkVYRm16UERwNmNRRzhXZ1diZGxVdGZkLVpEQUp6aGs9.gif

END

本文作者:李黄衍(上海新炬中北团队)

本文来源:“IT那活儿”公众号

[我要纠错]
文:宋聪乔&发表于江苏
关键词: 准备工作 首先 安装 依赖 nbsp

来源:本文内容搜集或转自各大网络平台,并已注明来源、出处,如果转载侵犯您的版权或非授权发布,请联系小编,我们会及时审核处理。
声明:江苏教育黄页对文中观点保持中立,对所包含内容的准确性、可靠性或者完整性不提供任何明示或暗示的保证,不对文章观点负责,仅作分享之用,文章版权及插图属于原作者。

点个赞
0
踩一脚
0

您在阅读:Postgres主从模式部署

Copyright©2013-2024 JSedu114 All Rights Reserved. 江苏教育信息综合发布查询平台保留所有权利

苏公网安备32010402000125 苏ICP备14051488号-3技术支持:南京博盛蓝睿网络科技有限公司

南京思必达教育科技有限公司版权所有   百度统计

最热文章
最新文章
  • 卡尔蔡司镜片优惠店,镜片价格低
  • 苹果原装手机壳