记录111

在两台 RHEL 8 服务器上搭建 PostgreSQL 和 pgpool-II 环境涉及到安装 PostgreSQL、配置流复制(Streaming Replication)以及安装和配置 pgpool-II。以下是详细的步骤:

 

### 准备工作

1. **获取服务器**:确保你有两台运行 RHEL 8 的服务器。假设服务器 IP 地址分别为 `Server1: 192.168.1.1` 和 `Server2: 192.168.1.2`。

2. **网络配置**:确保两台服务器之间的网络是通畅的,并且能够互相访问。

 

### 安装 PostgreSQL

1. **添加 PostgreSQL YUM 仓库**:在两台服务器上执行以下命令:

   ```

   sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm

   ```

2. **安装 PostgreSQL**:选择一个 PostgreSQL 版本进行安装,例如 PostgreSQL 12:

   ```

   sudo dnf -qy module disable postgresql

   sudo dnf install -y postgresql12-server

   ```

3. **初始化数据库**:在两台服务器上初始化 PostgreSQL 数据库:

   ```

   sudo /usr/pgsql-12/bin/postgresql-12-setup initdb

   ```

4. **启动 PostgreSQL 服务**:

   ```

   sudo systemctl enable postgresql-12

   sudo systemctl start postgresql-12

   ```

 

### 配置流复制(主-从配置)

1. **配置主服务器(Server1)**:

   - 编辑 `pg_hba.conf` 文件,允许从服务器连接:

     ```

     host replication postgres 192.168.1.2/32 trust

     ```

   - 编辑 `postgresql.conf`,开启复制功能:

     ```

     listen_addresses = '*'

     wal_level = replica

     max_wal_senders = 3

     max_replication_slots = 3

     ```

   - 重启 PostgreSQL 服务。

2. **在主服务器上创建复制用户**:

   ```

   sudo -u postgres psql -c "CREATE USER replicator REPLICATION LOGIN CONNECTION LIMIT 2 ENCRYPTED PASSWORD 'yourpassword';"

   ```

3. **配置从服务器(Server2)**:

   - 停止 PostgreSQL 服务。

   - 清空数据目录。

   - 使用 `pg_basebackup` 从主服务器获取数据:

     ```

     pg_basebackup -h 192.168.1.1 -D /var/lib/pgsql/12/data -U replicator -v -P -X stream

     ```

   - 创建 `recovery.conf` 文件,配置主服务器信息。

4. **启动从服务器 PostgreSQL 服务**。

 

### 安装和配置 pgpool-II

1. **在两台服务器上安装 pgpool-II**:

   ```

   sudo dnf install -y pgpool-II-12

   ```

2. **配置 pgpool-II**:

   - 配置 `pgpool.conf`,设置后端数据库和负载均衡等。

   - 配置 `pool_hba.conf` 和 `pcp.conf`。

3. **启动 pgpool-II 服务**:

   ```

   sudo systemctl start pgpool-II-12

   ```

 

### 验证和测试

1. **验证复制状态**:在主服务器上检查复制状态。

2. **测试 pgpool-II**:通过 pgpool-II 连接数据库,并执行一些查询来测试负载均衡和故障转移。

 

### 注意事项

- 在执行以上步骤时,确保正确地替换 IP 地址、用户名、密码等信息。

- 还需注意防火墙和 SELinux 设置,以确保服务之间可以通信。

- 此过程可能会因具体环境和版本而有所不同,因此建议参照最新的官方文档进行操作。

 

这是一个基础的安装和配置指南,实际部署时可能需要更详细的配置和调整,以满足特定的性能和安全要求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/197680.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

EasyRecovery2024免费永久版手机数据恢复软件

EasyRecovery2024是一款操作安全、用户可自主操作的数据恢复方案,它支持从各种各样的存储介质恢复删除或者丢失的文件,其支持的媒体介质包括:硬盘驱动器、光驱、闪存、硬盘、光盘、U盘/移动硬盘、数码相机、手机以及其它多媒体移动设备。能恢…

bad_python

攻防世界 (xctf.org.cn) 前戏 下载文件,解压完成后是这个 一个pyc文件 这里要用到python的反编译 要用到的工具有两个 1.python自带的uncompyle6 2.pycdc文件——比uncompyle6强大一点 我们一个一个来尝试一下 uncompyle6: 我是直接在pycharm里面…

Stm32 CubeIDE对RTC的日期、时间读写,后备存储的读写

Stm32 CubeIDE对RTC的日期、时间读写,后备存储的读写,一折腾又是好多的问题,现在梳理一下,后面的不要过多踩坑了。 用STM32CubeIDE生成代码 这里有时间和日期的设置,在代码中也会生成相应的代码,首次设置后…

Spark读写Doris数据

1 准备Spark环境 创建maven工程,编写pom.xml文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocati…

文字识别(OCR)专题——基于NCNN轻量级PaddleOCRv4模型C++推理

前言 PaddleOCR 提供了基于深度学习的文本检测、识别和方向检测等功能。其主要推荐的 PP-OCR 算法在国内外的企业开发者中得到广泛应用。在短短的几年时间里&#xff0c;PP-OCR 的累计 Star 数已经超过了32.2k&#xff0c;常常出现在 GitHub Trending 和 Paperswithcode 的日榜…

第二节JavaScript 语法、语句、注释、变量、数据类型等

一、JavaScript语法 1、JavaScript字面量 数字&#xff08;Number&#xff09;字面量&#xff1a;可以是整数或者是小数、或者是科学计数。 如&#xff1a;3.14 、1001 、123e5 字符串&#xff08;String&#xff09;字面量&#xff1a;可以使用单引号或双引号。 例如&…

Linux:/dev/mapper/centos-root 100%问题

思路1 切换到 / 目录下&#xff0c;看下是哪个目录占用的比较大 cd / du -h -x --max-depth1 思路2 直接查找大文件&#xff0c;查找大于100m的文件&#xff0c;可以根据实际情况&#xff0c;适当调整查找的文件大小 find / -type f -size 100M 思路3 使用lsof命令查看是否有占…

springboot(ssm房屋租赁系统 在线租房平台Java(codeLW)

springboot(ssm房屋租赁系统 在线租房平台Java(code&LW) 开发语言&#xff1a;Java 框架&#xff1a;ssm/springboot vue JDK版本&#xff1a;JDK1.8&#xff08;或11&#xff09; 服务器&#xff1a;tomcat 数据库&#xff1a;mysql 5.7&#xff08;或8.0&#xff09…

【算法】算法题-20231205

这里写目录标题 一、LCS 01. 下载插件二、已知一个由数字组成的列表&#xff0c;请将列表中的所有0移到右侧三、实现一个trim()函数&#xff0c;去除字符串首尾的空格&#xff08;不能使用strip()方法&#xff09; 一、LCS 01. 下载插件 简单 小扣打算给自己的 VS code 安装使…

FileIUtils 最佳实践

import java.io.File; import java.io.IOException; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter;public class FileIUtils {删除文件夹及文件夹下的所有文件 public static void deleteDirAndFiles(String path) throws Exception {File fil…

全球与中国仿制药市场:增长趋势、竞争格局与前景展望

仿制药是指在剂型、功效、给药方法、品质、性能特征、用途等方面与原厂药相似并已获得原厂药上市许可的药品。仿制药的价格低于品牌药。糖尿病、癌症和心血管疾病等慢性疾病的快速成长推动了仿制药市场的成长。此外&#xff0c;仿制药的实惠价格以及最新产品的批准和推出也有助…

ViVo小游戏对接sdk

1.安装环境&#xff1a; 电脑环境&#xff1a;adb环境和oppo一样&#xff0c;npm环境和oppo一样 升级npm&#xff1a; npm install -g npm 清除npm缓存&#xff1a;npm cache clean -f 安装vivo初始化小游戏的工具&#xff1a; npm install -g vivo-minigame/cli 解决办法&…

前端知识笔记(三十四)———HBuilder的下载与使用(详细步骤)

一、HBuilder IDE的下载 HBuilder下载官网地址&#xff1a; 在地址栏中直接输入https://www.dcloud.io 或者直接点击下面的链接 DCloud - HBuilder、HBuilderX、uni-app、uniapp、5、5plus、mui、wap2app、流应用、HTML5、小程序开发、跨平台App、多端框架 进入官网&#x…

[ 蓝桥杯Web真题 ]-外卖给好评

目录 介绍 准备 目标 效果 规定 思路 解答参考 介绍 外卖是现代生活中必备的一环。收到外卖后&#xff0c;各大平台软件常常会邀请用户在口味&#xff0c;配送速度等多个方面给与评分。在 element-ui 组件中&#xff0c;已经有相应的 Rate 组件&#xff0c;但是已有组件…

手搭手浅学状态管理VueX

https://vuex.vuejs.org/zh/guide/ 每一个 Vuex 应用的核心就是 store&#xff08;仓库&#xff09;。“store”基本上就是一个容器&#xff0c;它包含着你的应用中大部分的状态 (state)。Vuex 和单纯的全局对象有以下两点不同&#xff1a; Vuex 的状态存储是响应式的。当 Vu…

Oracle(2-9) Oracle Recovery Manager Overview and Configuration

文章目录 一、基础知识1、User Backup VS RMAN2、Restoring &Recovering DB 还原&恢复数据库3、Recovery Manager Features 管理恢复功能4、RMAN Components RMAN组件5、Repository1: Control File 存储库1:控制文件6、Channel Allocation 通道道分配7、Media Manageme…

举例C#使用特性排除某些类成员不参与XML序列化和反序列化

在C#中&#xff0c;可以使用 [XmlIgnore] 特性来排除某些类成员不参与XML序列化和反序列化。这个特性告诉XML序列化器忽略被标记的成员。 以下是一个使用 [XmlIgnore] 特性的示例&#xff1a; using System; using System.IO; using System.Xml.Serialization;public class P…

[Azure]azure磁盘加密(Windows/Linux) ADE(Azure Disk Encryption)

Azure 磁盘加密用于保护数据&#xff0c;对于Windows使用BitLocker对磁盘进行加密&#xff0c;同时与Key Vault集成&#xff0c;控制和管理Key和Secret。 本文利用Potal对磁盘进行加密 注&#xff1a;Azure DIsk Encryption 可能会导致VM重启&#xff0c;对VM造成影响&#xff…

Linux下安装MySQL 5.7

1、下载安装包 wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm 2、安装MySQL包 yum -y install mysql57-community-release-el7-10.noarch.rpm 3、安装MySQL yum -y install mysql-community-server 如果出现下图失败情形&#xff0c;则…

基于Docker构建Python开发环境

1. Dockerfile dockerfile所在目录结构 FROM python:3.8 WORKDIR /leo RUN apt-get install -y wget RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo Asia/Shanghai >/etc/timezone # ssh免密登录 COPY id_rsa.pub /leo RUN mkdir ~/.s…