postgresql 12版本搭建及主备部署操作

这里是postgresql 12版本搭建及主备部署操作的完整攻略。

安装postgresql 12

首先,你需要安装postgresql 12,可以通过以下两种方式进行安装操作:

方法一:Ubuntu软件源安装

在Ubuntu系统上,postgresql 12可以通过系统软件源进行安装,使用以下命令进行安装:

sudo apt-get update
sudo apt-get install postgresql-12

方法二:源码安装

你也可以通过源码进行安装,具体步骤如下:

  1. 下载postgresql 12的源码包,可以官网下载:https://www.postgresql.org/download/
  2. 解压源码包:tar -zxvf postgresql-12.tar.gz
  3. 进入源码目录: cd postgresql-12
  4. 执行预配置: ./configure --prefix=/usr/local/pgsql-12
  5. 编译: make
  6. 安装: sudo make install
  7. 创建postgresql用户:sudo useradd postgres
  8. 设置postgresql密码:sudo passwd postgres
  9. 初始化数据库: sudo /usr/local/pgsql-12/bin/initdb -D /usr/local/pgsql-12/data
  10. 启动postgresql: sudo /usr/local/pgsql-12/bin/pg_ctl -D /usr/local/pgsql-12/data -l logfile start

以上就是postgresql 12的安装操作。

主备部署

接下来,讲解postgresql 12的主备部署操作。

配置主库

主库的配置步骤如下:

  1. 修改postgresql.conf配置文件:sudo vim /etc/postgresql/12/main/postgresql.conf
listen_addresses = 'localhost,192.168.1.1'  # 修改监听IP地址
wal_level = replica  # 把wal_level的值设置为replica
max_wal_senders = 10  # 设置能够向外发送归档日志的最大进程数
wal_keep_segments = 256  # 设置能够保存归档日志的最小数量
hot_standby = on  # 开启热备份模式
  1. 修改pg_hba.conf权限文件:sudo vim /etc/postgresql/12/main/pg_hba.conf

在该文件中添加以下内容:

host replication postgres 192.168.1.1/24 md5

配置备库

备库的配置步骤如下:

  1. 修改postgresql.conf配置文件:sudo vim /etc/postgresql/12/main/postgresql.conf
listen_addresses = 'localhost'  # 修改监听IP地址
hot_standby = on  # 开启热备份模式
  1. 创建recovery.conf文件:sudo vim /usr/local/pgsql-12/data/recovery.conf

在该文件中添加以下内容:

standby_mode = 'on'
primary_conninfo = 'host=192.168.1.1 port=5432 user=postgres password=123456'
trigger_file = '/usr/local/pgsql-12/data/failover'
  1. 启动备库:sudo /usr/local/pgsql-12/bin/pg_ctl -l /usr/local/pgsql-12/data/logfile -D /usr/local/pgsql-12/data start

测试主备切换

为了测试主备切换,可以模拟主库故障的情况。

  1. 手动停止主库:sudo /usr/local/pgsql-12/bin/pg_ctl -D /usr/local/pgsql-12/data -l logfile stop
  2. 备库自动切换为主库,可以通过以下命令查看:sudo /usr/local/pgsql-12/bin/psql -U postgres -h localhost -p 5432 -c "select pg_is_in_recovery()"
  3. 如果结果显示为“f”,则说明备库已经成为了主库。

如上就是postgresql 12版本搭建及主备部署操作的完整攻略。

参考示例一:https://www.cnblogs.com/lfri/p/12035564.html

参考示例二:https://www.jianshu.com/p/0a8ac490f4c0

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:postgresql 12版本搭建及主备部署操作 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • MySQL自定义函数简单用法示例

    下面我将为您讲解MySQL自定义函数的用法示例攻略,包含以下几个部分: 自定义函数介绍 MySQL中,自定义函数是一种用户自定义的函数,可以像系统自带函数一样被调用,方便用户在执行SQL语句时进行各类自定义操作。 自定义函数使用方法 2.1 创建自定义函数使用CREATE FUNCTION语句进行创建,一般包括函数名称、参数列表、返回值数据类型、函数体等四部…

    database 2023年5月22日
    00
  • 在Nginx服务器中配置针对TCP的负载均衡的方法

    在Nginx服务器中配置TCP负载均衡可以用于将传入请求流量自动平衡分发到多个服务器,从而实现高可用和高性能的目标。下面是详细的操作步骤: 环境准备 在开始之前,请确保你已经安装了Nginx服务器,可以使用以下命令检查: nginx -v 如果服务器返回了版本信息,则说明你已经安装了Nginx。 配置Nginx 首先,你需要编辑Nginx的配置文件(一般是/…

    database 2023年5月22日
    00
  • day02-Redis命令

    Redis命令 1.Redis数据结构介绍 Redis是一个key-value的数据库,key一般是String类型,value的类型多种多样,value常见的八种类型: Redis支持五种基本的数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set,有序集合)。 各个数据类型应用场景: 类型 简…

    2023年4月16日
    00
  • 直接在安装了redis的Linux机器上操作redis数据存储类型–对key的操作

    一、概述:     前几篇博客中,主要讲述的是与Redis数据类型相关的命令,如String、List、Set、Hashes和Sorted-Set。这些命令都具有一个共同点,即所有的操作都是针对与Key关联的Value的。而该篇博客将主要讲述与Key相关的Redis命令。学习这些命令对于学习Redis是非常重要的基础,也是能够充分挖掘Redis潜力的利器。 …

    Redis 2023年4月12日
    00
  • 前端程序员是怎么做物联网开发的

    前端程序员是怎么做物联网开发的 上图是我历时一周做的在线的温湿度可视化项目,可以查看截至目前往前一天的温度、湿度变化趋势,并且实时更新当前温湿度 本文可能含有知识诅咒 概述和基础讲解 该项目用到的技术有: 前端:jq、less、echarts、mqtt.js 后端:eggjs、egg-emqtt 数据库:mysql 服务器:emqx(mqtt broker)…

    MySQL 2023年4月11日
    00
  • Oracle实现行列转换的方法分析

    Oracle实现行列转换的方法分析 什么是行列转换 行列转换,指的是将列转换为行或将行转换为列的操作。在使用数据库时,行列转换通常用于将多行数据转换为单行数据,或将单行数据转换为多行数据,从而方便数据的处理和应用。 Oracle实现行列转换的方法 Oracle提供了多种方法来实现行列转换,以下是其中几种常用的方法: 1. 使用PIVOT语句 PIVOT语句是…

    database 2023年5月21日
    00
  • MySQL循环语句实例教程 mysql while循环测试

    在mysql数据库中操作同样有循环语句操作,标准的循环方式: while 循环 、 loop 循环和repeat循环。还有一种非标准的循环: goto。 鉴于goto 语句的跳跃性会造成使用的的思维混乱,所以不建议使用。 这几个循环语句的格式如下:WHILE……DO……END WHILEREPEAT……UNTIL END REPEATLOOP……END LO…

    MySQL 2023年4月13日
    00
  • SQL Server触发器及触发器中的事务学习

    SQL Server触发器及触发器中的事务学习 什么是触发器 触发器是一种在SQL Server数据库中用于监视特定事件(例如INSERT、UPDATE或DELETE)的特殊类型的存储过程。当这些事件中的任意一个发生时,触发器都会立即响应,它可以用于实现对数据库的一些自动化操作,比如数据审计、数据同步、数据约束等等。 触发器的基础语法 创建一个名为[触发器名…

    database 2023年5月21日
    00
合作推广
合作推广
分享本页
返回顶部