当前位置: 首页 > article >正文

记录66666

为了在两台运行RHEL 8的服务器上配置PostgreSQL 14的主从架构,你需要按照以下步骤操作。这里,假设你有两台服务器,主服务器的IP为`192.168.1.100`,从服务器的IP为`192.168.1.101`。我们将设置数据目录为`/data/`,归档日志目录为`/home/archive`。

 

### 主服务器配置(IP: 192.168.1.100)

 

1. **安装PostgreSQL 14**:

   参照之前的步骤安装PostgreSQL 14。

 

2. **初始化数据库**:

   ```bash

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

   ```

 

3. **配置数据目录**:

   参照之前的步骤配置数据目录到`/data/`。

 

4. **配置归档日志**:

   参照之前的步骤配置归档日志目录到`/home/archive`。

 

5. **配置PostgreSQL以允许复制**:

   - 编辑`/data/pg_hba.conf`,添加以下行以允许从服务器连接:

     ```

     host replication postgres 192.168.1.101/32 trust

     ```

   - 编辑`/data/postgresql.conf`,添加或修改以下配置:

     ```

     listen_addresses = '*'

     wal_level = replica

     max_wal_senders = 3

     archive_mode = on

     archive_command = 'cp %p /home/archive/%f'

     ```

 

6. **重启PostgreSQL服务**:

   ```bash

   sudo systemctl restart postgresql-14

   ```

 

### 从服务器配置(IP: 192.168.1.101)

 

1. **安装PostgreSQL 14**:

   同样的步骤安装PostgreSQL 14。

 

2. **配置数据目录**:

   创建并初始化`/data/`目录(但不要启动PostgreSQL服务)。

 

3. **基于主服务器的数据初始化从服务器**:

   ```bash

   sudo systemctl stop postgresql-14

   sudo su - postgres

   pg_basebackup -h 192.168.1.100 -D /data -U postgres -P -R

   exit

   ```

 

4. **配置从服务器的PostgreSQL**:

   - 编辑`/data/postgresql.conf`,确保以下配置正确:

     ```

     listen_addresses = '*'

     hot_standby = on

     ```

 

5. **启动从服务器的PostgreSQL服务**:

   ```bash

   sudo systemctl start postgresql-14

   ```

 

### 验证配置

 

1. **在主服务器上创建一个测试数据库**,然后检查是否在从服务器上同步。

 

2. **检查从服务器的日志文件**,确认正在接收来自主服务器的数据。

 

### 注意事项

 

- 确保两台服务器之间的网络通畅,特别是对于PostgreSQL使用的端口(默认是5432)。

- 根据你的具体需求和环境,可能需要调整一些安全设置,比如使用密码认证代替`trust`认证。

- 定期检查归档日志和复制状态,确保系统正常运行。

- 对于生产环境,你可能需要考虑更复杂的备份和故障转移策略。

 

这是一个基本的主从配置示例。根据你的具体需求,可能需要进一步的优化和调整。


http://www.kler.cn/a/157500.html

相关文章:

  • 【活动邀请·深圳】深圳COC社区 深圳 AWS UG 2024 re:Invent re:Cap
  • 堆【Lecode_HOT100】
  • CPU性能优化--函数分组
  • 《探秘 Qt Creator Manual 4.11.1》
  • 3.使用SD卡挂载petalinux根文件系统
  • Restaurants WebAPI(二)——DTO/CQRS
  • oracle数据库 实例名是区分大小写的
  • nodejs+vue+微信小程序+python+PHP就业求职招聘信息平台的设计与实现-计算机毕业设计推荐
  • pyecharts可视化作图4:行业分布-条形图
  • 网络可信空间|探讨现有网络安全中可信空间建设问题,以及建设可信空间的关键要素
  • node运行报错:error:0308010C:digital envelope routines::unsupported
  • 07、pytest指定要运行哪些用例
  • PTA 7-239 进制转换
  • Redis--14--BigKey 和 热点Key
  • Raspberry Pi 2, 2 of n - Pi 作为 IoT 消息代理
  • python pyaudio实时读取音频数据并展示波形图
  • 1.uniapp基础
  • 探索 SSO 的世界:简化登录流程的最佳实践(下)
  • mapbox Marker添加自定义html
  • 景联文科技解读《2023人工智能基础数据服务产业发展白皮书》,助力解决数据标注挑战
  • 一起学习云计算
  • 在线直线度测量仪在圆形轧钢中的重要性
  • 关于如何解决问题?代码习惯。
  • spring cloud 整合Feign经行远程调用
  • Android : DataBinding 简化开发 简单应用
  • 深入理解Zookeeper系列-4.Watcher原理