IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> PostgreSQL的数据库备份(主从复制) -> 正文阅读

[大数据]PostgreSQL的数据库备份(主从复制)

一、 创建相应的目录

1.Master 节点 [10.240.131.51]

1.1 创建Master 的数据目录
mkdir -p <your postgres master node data path>
madir -p /var/testPSQL/master

cd <your postgres master node data path>
cd /var/testPSQL/master

cd ../ && chmod -R 777 <data directory's name> 
chmod -R 777 master
1.2 创建Master 容器
get current user id 或者 echo $UID
id <current username>


docker run -dit \
--name postgres \
--restart always \
-e POSTGRES_PASSWORD=<your password> \
-v <your postgres master node data's path>:/var/lib/postgresql/data \
-p 5432:5432 \
-u <current user id> \
postgres[:tag]


eg:
	docker run -dit \
	--name postgres \
	--restart always \
	-e POSTGRES_PASSWORD=123456 \
	-v /var/testPSQL/master:/var/lib/postgresql/data \
	-p 5432:5432 \
	-u 0 \
	postgres:13.1
1.3 Mater的配置
docker exec -it postgres /bin/bash
psql -U postgres
#创建用户
CREATE ROLE replica login replication encrypted password '<your password>';
eg: 
	CREATE ROLE replica login replication encrypted password '1234567';
	
# 退出	
\q
exit
cd <your postgres master node data path>
eg: 
	cd /var/testPSQL/master

echo host replication replica <postgres' slave node IP address>/32 trust >> pg_hba.conf

# 修改配置文件
vi postgresql.conf

listen_addresses = '*' 
wal_level = replica
archive_mode = on
# 重启容器
docker restart postgres

1.4Master节点测试
docker exec -it postgres /bin/bash
psql -U postgres
show archive_mode;

在这里插入图片描述

二、Slave 节点 [10.240.131.51]

2.1创建Slave的数据目录
mkdir -p <your postgres slave node data's path>
madir -p /var/testPSQL/slave 

cd <your postgres slave node data path>
cd madir -p /var/testPSQL/slave 

cd ../ && chmod -R 777 <data directory name> 
chmod -R 777 slave 
2.2 创建Slave容器
get current user id 或者 echo $UID
id <current username>


docker run -dit \
--name postgres \
--restart always \
-e POSTGRES_PASSWORD=<your password> \
-v <your postgres slave node data's path>:/var/lib/postgresql/data \
-p 5432:5432 \
-u <current user id> \
postgres[:tag]


eg:
	docker run -dit \
	--name postgres \
	--restart always \
	-e POSTGRES_PASSWORD=123456 \
	-v /var/testPSQL/slave:/var/lib/postgresql/data \
	-p 5432:5432 \
	-u 0 \
	postgres:13.1
2.3 Slave的配置
docker exec -it postgres /bin/bash
rm -rf /var/lib/postgresql/data/*
pg_basebackup -h <master node's IP> -p 5432 -U replica -Fp -Xs -Pv -R -D /var/lib/postgresql/data
eg:
	pg_basebackup -h 10.240.131.51 -p 5432 -U replica -Fp -Xs -Pv -R -D /var/lib/postgresql/data
# 在容器外部
cd <your postgres slave node data path>
eg:
	cd /var/testPSQL/slave 
touch standby.signal && echo standby_mode = 'on' >> standby.signal

# 修改配置文件
vi postgresql.conf
max_connections = 120                	# must be bigger than the
Master Node
wal_level = replica						
recovery_target_timeline = 'latest'    	
primary_conninfo = 'host=<master node's IP> port=5432 user=replica password=<maser node user "replica"'s password>'	
hot_standby = on   

eg:
	max_connections = 120                	# must be bigger than the
	Master Node
	wal_level = replica						
	recovery_target_timeline = 'latest'    	
	primary_conninfo = 'host=< 10.240.131.51 port=5432 user=replica password=1234567 '	
	hot_standby = on   


三、重启容器测试即可

docker restart postgres
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-04-04 12:18:09  更:2022-04-04 12:18:53 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 4:34:10-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码