沙井做网站的公司,中小型网站建设流程,《jsp网站开发详解》百度云,wordpress如何实现精确查询实现步骤
1.主库创建一个有复制权限的用户
CREATE ROLE 用户名login # 有登录权限的角色即是用户replication #复制权限
encrypted password 密码;2.主库配置开放从库外部访问权限
修改 pg_hba.conf 文件 #xff08;相当于开放防火墙#xff09;
# 类型 数据库 …实现步骤
1.主库创建一个有复制权限的用户
CREATE ROLE 用户名login # 有登录权限的角色即是用户replication #复制权限
encrypted password 密码;2.主库配置开放从库外部访问权限
修改 pg_hba.conf 文件 相当于开放防火墙
# 类型 数据库 用户 地址 方法# local is for Unix domain socket connections only
host all 上面创建的用户名 从库地址 trust# Allow replication connections from localhost, by a user with the
# replication privilege.
host replication 上面创建的用户名 从库地址 trust
上面是允许登录的 地址
下面是允许复制的地址 3.设置主库wal复制 修改主库配置文件 postgresql.conf
wal_level replica # wal级别minimal, replica, or logicalmax_wal_senders 4 # 最大发送进程数
wal_keep_size 16 # 多大wal文件被写满单位M; 0 disables
wal_sender_timeout 60s # wal发送超时时间max_connections 100 # 最大连接数从库需要大于主库这个值
4.主库备份覆盖从库数据文件
1.删除从库的数据文件
2.使用物理备份命令备份主库数据文件到从库
pg_basebackup -h 主库地址 -p 主库端口 -D 复制到从库数据目录 -U 有复制权限的用户 -Fp -Xs -Pv -R --checkpointfast 5.配置从库备份主库信息
max_connections 200recovery_target_timeline latest # current, latest, or timeline ID 恢复哪个时间点primary_conninfo host10.0.12.12 port5432 user用户名 password密码 # 连接主库信息
hot_standby on # off disallows queries during recovery
max_standby_streaming_delay 30s # 最大延迟时间
wal_receiver_status_interval 10s # 向主库发送wal接收状态时间
hot_standby_feedback on # 发送错误信息
wal_receiver_timeout 60s # 接收wal超时时间
wal_retrieve_retry_interval 5s # 等待重试时间间隔 6.重启从库 测试
查询复制信息
select client_addr,sync_state from pg_stat_replication; 表示主从部署成功 主宕机从升主
模拟主库宕机从库手动升级为主库原主库恢复变成从库。
1.主库停机
2.从库使用命令 pg_ctl promote升级为主库
3.这时恢复原主库作为从库需要同步主库数据
# 先删除这个从库数据再同步主库数据
pg_basebackup -h 新主库地址 -D /var/lib/postgresql/data -p 新主库端口 -U 备份用户 -Fp -Xs -Pv -R --checkpointfast
还有一种 利用pg_rewind 命令实现增量同步数据这里没有实现
4.重启从库
5.验证
主库执行 select client_addr,sync_state from pg_stat_replication;