基于docker容器的Postgresql 11主从复制搭建 及切换

本文档详细介绍了如何在Docker环境下搭建PostgreSQL 11的主从复制,包括主从服务器的配置、数据同步、主备切换的测试,确保高可用性。
摘要由CSDN通过智能技术生成

基于docker容器的Postgresql 11主从复制搭建 及切换

1、背景

  由于新项目要用到postgresql,且要求高可用功能,因此做可行性测试研究,并记录过程,以备查。
镜像采用官方postgresl11镜像,本地镜像只是为了加快部署进度.并无特殊之处。
首次应用,难免有疏漏错误之处,欢迎批评指正。

2、环境

192.168.200.153 部署主数据库

数据盘挂载在 /home目录

192.168.205.72 部署从数据库

数据盘挂载在 /data目录

3、安装部署

3.1 主服务器

利用 docker 搭建 postgres 服务器

mkdir -p  /home/postgresql/data
docker run --name test_pg --restart=always  -v /home/postgresql/data:/var/lib/postgresql/data -e POSTGRES_PASSWORD=123456 -p 5432:5432 -d 192.168.200.153:5000/test_pg:0.2

-v : 建立数据卷,将 docker 内的文件系统挂载到宿主机上, linux 目录:/home/postgresql/data, docker 容器对应的路径 /var/lib/postgresql/data

    1. 进入启动的 docker 容器内部
docker exec -it test_pg /bin/bash
    1. 进入 postgres 客户端,新建用于同步数据的用户
# 切换到 postgres 用户

su postgres

# 进去 postgres 客户端

psql

进入 postgres 客户端

CREATE ROLE replica login replication encrypted password 'replica';

注:注意语句最后添加分号
创建用户成功之后,控制台会显示 “CREATE ROLE”,利用 \du 命令可以查看 postgres 的用户列表

postgres=# \du
                                   List of roles
 Role name |                         Attributes                         | Member of 
-----------+------------------------------------------------------------+-----------
 postgres  | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
 replica   | Replication                                           
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值