postgres主备库搭建

postgres主备库搭建

安装

yum install postgresql11-server
yum install postgresql11-contrib
yum install psmisc

创建用户和用户组

userdel postgres
groupadd -g 701 postgres
useradd -g 701 -m -s /bin/bash -u 701 postgres

initdb

su - postgres
initdb
pg_ctl start

基本配置postgresql.conf

wal_log_hints = on   
unix_socket_directories = '/tmp'
max_wal_size = 1GB
min_wal_size = 800M  
listen_addresses = '*' 
logging_collector = 改为on


max_connections  连接数
port  端口
shared_buffers = 128MB 内存

#下面几个是默认的,不改也行,但是比较重要
#wal_level = replica
#hot_standby = on
#max_wal_senders = 10

配置pg_hba.conf


```bash
local   all             all                                     peer
host    all             all             0/0                     md5
local   replication     all                                     peer
host    replication     all             0/0                     md5

修改密码

ALTER USER postgres WITH PASSWORD 'postgres';

搭备库

pg_basebackup -h10.*.*.*  -U postgres -P -R -D $PGDATA

# 因为要写一个自动搭建备库的程序,这个地方需要密码所以可以直接写密码
pg_basebackup -d"host=10.*.*.* port=5432 dbname=template1 password=postgres" -U postgres-P  -R -D $PGDATA

修改recovery.conf

standby_mode = 'on'
recovery_target_timeline = 'latest'
primary_conninfo = 'application_name=stb27 user=postgres host=10.*.*.* port=5432 password=postgres sslmode=disable sslcompression=1'

启动数据库

pg_ctl start
在Windows下设置PostgreSQL服务器和份服务器)可以通过以下步骤完成: 1. 安装PostgreSQL:首先,在服务器和份服务器上分别安装相同版本的PostgreSQL。你可以从官方网站(https://www.postgresql.org/download/windows/)下载最新的Windows安装程序。 2. 配置服务器:在服务器上,打开PostgreSQL安装目录中的postgresql.conf文件(默认路径为C:\Program Files\PostgreSQL\<版本号>\data\postgresql.conf)。找到以下行,并进行相应的更改: ``` # 启用归档模式 archive_mode = on # 指定归档命令 archive_command = 'copy "%p" "归档路径\%f"' ``` 确保将"归档路径"替换为一个份存储的有效路径。保存并关闭文件。 3. 配置份服务器:在份服务器上,打开PostgreSQL安装目录中的postgresql.conf文件。找到以下行,并进行相应的更改: ``` # 启用热 hot_standby = on # 指定服务器的连接信息 primary_conninfo = 'host=服务器IP地址 port=5432 user=用户名 password=密码' # 指定归档命令 restore_command = 'copy "归档路径\%f" "%p"' ``` 确保将"服务器IP地址"、"用户名"和"密码"替换为实际的连接信息,并将"归档路径"替换为与服务器相同的路径。保存并关闭文件。 4. 启动服务器和份服务器:在两台服务器上分别启动PostgreSQL服务。你可以使用"pg_ctl"命令来启动服务,如: ``` pg_ctl start -D "安装目录\data" ``` 5. 配置流复制:在份服务器上,创建一个名为"recovery.conf"的文件,内容如下: ``` standby_mode = 'on' primary_conninfo = 'host=服务器IP地址 port=5432 user=用户名 password=密码' trigger_file = '安装目录\data\trigger' ``` 确保将"服务器IP地址"、"用户名"和"密码"替换为实际的连接信息。保存并关闭文件。 6. 启动份服务器:在份服务器上启动PostgreSQL服务后,它将连接到服务器并开始进行流复制。 这样,你就完成了在Windows下设置PostgreSQL配置。服务器将负责处理所有的写操作,而份服务器将通过流复制从服务器同步数据,并提供读访问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值