首页 > 数据库 >pgsql 主从

pgsql 主从

时间:2025-01-10 09:55:34浏览次数:1  
标签:opt postgresql pgsql pg 16.0 home data 主从


vim /home/opt/postgresql-16.0/data/postgresql.conf
#设置以下
listen_addresses = '*' # 允许远程连接
hot_standby = on # 打开热备
wal_level = replica # 设置 WAL 日志级别为 replica
max_wal_senders = 3 # 允许的 WAL 发送者数量,根据需要进行调整
archive_mode = on
archive_command = 'cp "%p" /home/opt/postgresql-16.0/data/archive/%f'

mkdir /home/opt/postgresql-16.0/data/archive
chown postgres:postgres -R /home/opt/postgresql-16.0/data/archive
su - postgres
pg_ctl -D /home/opt/postgresql-16.0/data restart

#创建slave用户
psql
create role replicator with login replication encrypted password '密码';

vim /home/opt/postgresql-16.0/data/pg_hba.conf
#添加以下
host replication replicator ip地址/32 md5
从服务器

首先,你需要创建一个新的PostgreSQL实例。然后,停止这个实例,并且同步用的数据目录需要是空的

#使用pg_basebackup命令从主服务器复制数据
pg_basebackup -Fp --progress -D /home/opt/postgresql-16.0/data/ -R -h 主库ip地址 -p 主库端口 -U replicator --password
chown postgres:postgres -R /home/opt/postgresql-16.0/data/

#创建slave配置文件
vim /home/opt/postgresql-16.0/data/standby.signal
#添加以下
standby_mode = on #on为从库
primary_conninfo = 'host=主库ip地址 port=主库端口 user=replicator password=密码' #主库信息
recovery_target_timeline = 'latest' #流复制同步最新数据

su - postgres
pg_ctl -D /home/opt/postgresql-16.0/data start
验证主从关系

#主库上验证
psql
select * from pg_stat_replication;

#从库上验证
pg_controldata -D /home/opt/postgresql-16.0/data/ | grep 'Database cluster state'
#正常显示
Database cluster state: in archive recovery
代码解释
其他命令

#备份数据
pg_dump -U postgres -F c -b -f 备份文件路径 备份的数据库名称

#恢复数据
pg_restore -U postgres -d 备份的数据库名称 备份文件路径

标签:opt,postgresql,pgsql,pg,16.0,home,data,主从
From: https://www.cnblogs.com/gaoyuechen/p/18663376

相关文章

  • 分布式锁Redisson详解,Redisson如何解决不可重入,不可重试,超时释放,主从一致问题的分析解
    目录1.Redisson解决不可重入锁导致的死锁问题 2.不可重试问题Pub/Sub的优势锁释放的发布逻辑3.超时释放的问题1.锁的超时释放机制背景2.源码分析2.1锁的获取2.2看门狗机制2.3看门狗续期实现2.4手动设置锁的过期时间总结 4.主从一致性 问题背景......
  • CICD Day4、Jenkins主从架构
    Jenkins主从架构(Master-Slave)是一种分布式架构,主节点负责管理项目配置、任务调度和监控,从节点用于执行具体的构建任务。Jenkins主从架构如下图所示 当项目触发构建时,主节点将任务分配到某个从节点,从节点根据项目配置执行一系列操作,如拉取代、代码编译、部署到目标服务器等......
  • [微服务]redis主从集群搭建与优化
    搭建主从集群单节点Redis的并发能力是有上限的,要进一步提高Redis的并发能力,就需要搭建主从集群,实现读写分离。1.主从集群结构下图就是一个简单的Redis主从集群结构:如图所示,集群中有一个master节点、两个slave节点(现在叫replica)。当我们通过Redis的Java客户端访问主从集......
  • 实践项目-数据库主从高可用(PostgreSQL、Pgpool2、pg_dumpall)
    (250103)实践目标备份策略:定期全量备份和增量备份,备份文件异地存储。恢复测试:定期在测试库上恢复备份,确保备份文件可用。权限管理:严格控制数据库访问权限,避免误操作。变更管理:所有数据库变更需经过审批,并在非高峰时段执行。监控告警:实时监控数据库状态,设置告警机制,及时发现......
  • 实践项目-数据库主从高可用(MySQL-MHA、ProxySQL、Backup)
    (250103)实践目标备份策略:定期全量备份和增量备份,备份文件异地存储。恢复测试:定期在测试库上恢复备份,确保备份文件可用。权限管理:严格控制数据库访问权限,避免误操作。变更管理:所有数据库变更需经过审批,并在非高峰时段执行。监控告警:实时监控数据库状态,设置告警机制,及时发现......
  • PGSQL 根据身份证号码判断人员性别, SQL案例中是对存在身份证号码进行判断
    为了清洗包含脏数据的身份证号码,并据此判断用户的性别,我们需要处理三种情况:身份证号码中包含空格、身份证号码为NULL、以及身份证号码为空字符串。以下是优化后的SQL查询语句,它将清晰地处理这些情况,并根据身份证号码的倒数第二位数字来判断性别(奇数为男性,偶数为女性)--[表名]......
  • Dify 框架连接 PGSQL 数据库与 Sandbox 环境下的 Linux 系统调用权限问题
    Dify框架连接PGSQL数据库与Sandbox环境下的Linux系统调用权限问题背景在使用Dify框架进行开发时,遇到了两个主要的技术挑战:代码节点连接到PGSQL(PostgreSQL)数据库。解决沙盒环境中由于系统调用限制导致的“operationnotpermitted”错误。本文档将详细描述如何解......
  • 《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
    @目录二、高级篇(大厂进阶)1.Docker复杂安装详说1.1安装mysql主从复制1.2安装redis集群1.2.1面试题:1~2亿条数据需要缓存,请问如何设计这个存储案例哈希取余分区一致性哈希算法分区哈希槽分区1.2.23主3从redis集群扩缩容配置案例架构说明整体流程图知识点总结图使用步骤:注意点说明......
  • 开启了TDE下的mysql主从部署
    环境:OS:Centos7mysql:5.7.39 1.主库开启了TDEmysql>showvariableslike'%keyring%';+--------------------+------------------------------+|Variable_name|Value|+--------------------+------------------------------+......
  • MySQL主从架构
    MySQL主从架构MySQL主从架构(Master-SlaveArchitecture)是一种常见的数据库高可用性和负载均衡的设计模式,通常用于提高系统的可伸缩性和可靠性。它基于数据复制(replication)机制,其中“主”服务器负责处理所有的写操作,而“从”服务器则通过复制主服务器的数据来保持数据一致性,主要用......