Postgresql 9.6.12在windows上的主从部署配置搭建。 postgresql 数据库主从复制。postgresql 基于windows的主从

本文主要是介绍Postgresql 9.6.12在windows上的主从部署配置搭建。 postgresql 数据库主从复制。postgresql 基于windows的主从,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

公司最近要部署postgresql(以下简称pg)数据主从复制,之前没怎么接触过pg数据库主从。 对这个概念也不是很熟悉。

网上找教程,结果搜索到的很多都是Linux,以及配合windows系统下的部署 。 没有找到主从都是windows系统的教程。很多教程折腾了好久报错。各种报错。

自己折腾了这么久,也算是部署搭建成功了。 所以写下这个教程。 供其他小伙伴们参考。不足之处多多批评指出。欢迎交流探讨。

 

1. 安装环境:

主机:xxx.119   windows Server2012 

从机   xxx. 202  windows 10 

pg版本: 9.6.12

 

首先分别在主从机子上都安装好pg软件,这里不多做说明。 网上教程很多。

安装完之后,可以不装其他多余的插件。

 

我在此次默认一个安装密码root ,也就是 默认用户名postgresql 的密码。

1.1 主机配置

软件安装完毕之后,

 

进入cmd中, 进入到pg安装目录的bin目录, 我这里安装目录是 D:\server\postgresql9.6

检查安装版本:

 

补充一点,如果不想每次进入到bin目录太麻烦的话,可以配置path, 配置bin到path,然后直接cmd中就能用psql命令了。

 

 

这样在任何目录都能直接使用psql命令

 

1.2 再然后用默认的用户登录数据库看看。。 前面说到的默认密码是root,

在cmd中, psql -h 192.168.0.119 -U postgres 

然后输入密码root

如图

 

这样就表示登录成功了。 注意,输入密码的时候是没有显示的。 

 

可以用相关的指令查看表或者数据库。

这里简单说几个, 其他自行百度

\l    查看所有数据库

\dt 查看当前所有表

 

然后可以退出了。 在这个页面可以 直接 Ctrl+C 退出命令, 或者 \q退出。

接下来配置主库的postgresql.conf文件  ,文件在安装目录的data文件夹中

 

 

配置以下几个参数:

  1. listen_address = ‘*’(默认localhost)
  2. wal_level = hot_standby(默认是minimal)
  3. max_wal_senders=2(默认是0)
  4. wal_keep_segments=64(默认是0)

配置完成之后,

再登录主机的postgresql 用户, 创建一个超级用户。

create user repl superuser password 'root';

 

 

用户创建完成之后,打开pg_hba.conf 文件进行配置

 

 

到这里,主库就完成了。 

然后开始从库的配置

 

 

首先,清空从机上的data文件夹中的内容,这里建议改名,比如说改成data-01,

 

在从机上刚刚安装完成pg之后,可能data不能改名,因为有程序在使用,进入到服务, 把pg的服务停止

 

windows键+R    输入  services.msc

 

找到 pg的服务,

 

将其停止,就能给data改名了, 或者直接删除data中的内容,改名之后再新建一个data文件夹。。

 

然后开始从主机这了备份主机的数据库。

在cmd中 运行用下指令(注意data后面还有一个\)

pg_basebackup -h 192.168.0.1 -U repl -F p -x -P -R -D D:\server\postgresql9.6\data\

 

 

 

 

 

在前面都操作正确的情况下,然后会提示你输入密码,这里暂时没有保存截图。

输入密码root之后,就开始进行复制了, 等复制完成100%之后,我们发现data文件夹下多出了很多文件和文件夹, 这个是从主机上复制过来的。 

 

 

这个时候其实差不多已经完成了。 

然后你再从机上登录从机的pg数据库。 用户postgresql 登录。 。 。 登录从机本机数据库  psql -h localhost -U postgres 

 

这个时候你会发现你登录不上去,因为刚刚已经关闭了服务了, 

然后你会到服务中再启动服务,

但是,通常情况下,这个服务启动不了。

这个时候,接下里就要在从机的postgresql.conf 文件中做一些修改了。

 

hot_standby改为启用状态,即hot_standby=on

 

 

更改完成之后,再去启动pg的服务。

 

可能这个时候还是启动不了? 

怎么办呢?

 

进入任务管理器。 找到后台任务,把pg的进行全部杀死

 

 

 

完成之后再去启动服务。 应该就能启动了 。。。

 

现在开始测试下。。

登录主机:

psql -h localhost -U repl -d postgres

 

然后在主机上我们创建一张表 testcsdn 

create table testcsdn(id int, name text)

 

 

然后再从机上登录从机的数据库

 

psql -h localhost -U postgres -d postgres

 

 

可以看到从机的数据库中已经有了我们在主机中创建的表testcsdn。

说明是能自动备份的。 

 

 

另外有几个问题:

主机中创建表之后没有成功的提示。 不知道是哪里的问题。 但是能正常复制到从机。

 

 

 

最后,文章参考来源:https://blog.csdn.net/wlwlwlwl015/article/details/53287855

 

感谢大神。。。

这篇关于Postgresql 9.6.12在windows上的主从部署配置搭建。 postgresql 数据库主从复制。postgresql 基于windows的主从的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/624316

相关文章

postgresql使用UUID函数的方法

《postgresql使用UUID函数的方法》本文给大家介绍postgresql使用UUID函数的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录PostgreSQL有两种生成uuid的方法。可以先通过sql查看是否已安装扩展函数,和可以安装的扩展函数

Spring Boot Maven 插件如何构建可执行 JAR 的核心配置

《SpringBootMaven插件如何构建可执行JAR的核心配置》SpringBoot核心Maven插件,用于生成可执行JAR/WAR,内置服务器简化部署,支持热部署、多环境配置及依赖管理... 目录前言一、插件的核心功能与目标1.1 插件的定位1.2 插件的 Goals(目标)1.3 插件定位1.4 核

虚拟机Centos7安装MySQL数据库实践

《虚拟机Centos7安装MySQL数据库实践》用户分享在虚拟机安装MySQL的全过程及常见问题解决方案,包括处理GPG密钥、修改密码策略、配置远程访问权限及防火墙设置,最终通过关闭防火墙和停止Net... 目录安装mysql数据库下载wget命令下载MySQL安装包安装MySQL安装MySQL服务安装完成

RabbitMQ消息总线方式刷新配置服务全过程

《RabbitMQ消息总线方式刷新配置服务全过程》SpringCloudBus通过消息总线与MQ实现微服务配置统一刷新,结合GitWebhooks自动触发更新,避免手动重启,提升效率与可靠性,适用于配... 目录前言介绍环境准备代码示例测试验证总结前言介绍在微服务架构中,为了更方便的向微服务实例广播消息,

MySQL进行数据库审计的详细步骤和示例代码

《MySQL进行数据库审计的详细步骤和示例代码》数据库审计通过触发器、内置功能及第三方工具记录和监控数据库活动,确保安全、完整与合规,Java代码实现自动化日志记录,整合分析系统提升监控效率,本文给大... 目录一、数据库审计的基本概念二、使用触发器进行数据库审计1. 创建审计表2. 创建触发器三、Java

MySQL 主从复制部署及验证(示例详解)

《MySQL主从复制部署及验证(示例详解)》本文介绍MySQL主从复制部署步骤及学校管理数据库创建脚本,包含表结构设计、示例数据插入和查询语句,用于验证主从同步功能,感兴趣的朋友一起看看吧... 目录mysql 主从复制部署指南部署步骤1.环境准备2. 主服务器配置3. 创建复制用户4. 获取主服务器状态5

Windows环境下解决Matplotlib中文字体显示问题的详细教程

《Windows环境下解决Matplotlib中文字体显示问题的详细教程》本文详细介绍了在Windows下解决Matplotlib中文显示问题的方法,包括安装字体、更新缓存、配置文件设置及编码調整,并... 目录引言问题分析解决方案详解1. 检查系统已安装字体2. 手动添加中文字体(以SimHei为例)步骤

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

PostgreSQL中rank()窗口函数实用指南与示例

《PostgreSQL中rank()窗口函数实用指南与示例》在数据分析和数据库管理中,经常需要对数据进行排名操作,PostgreSQL提供了强大的窗口函数rank(),可以方便地对结果集中的行进行排名... 目录一、rank()函数简介二、基础示例:部门内员工薪资排名示例数据排名查询三、高级应用示例1. 每