PostgreSQL promote过程 和 一主多备 时间线 无缝对接 详解

PostgreSQL的physical standby数据库的promote过程,数据库会在pg_xlog目录产生3个文件。
例如将备库1 promote,它将在pg_xlog目录产生如下文件:

A.partial     (xlog)
NEWTL_A  (xlog)
NEWTL.history  (history file)

例如备库1当前已接收到的XLOG位置是 00000001000000000000002D 文件中的某个位置 0/2D15D7D0,现在promote它 。
将会在pg_xlog目录中产生3个文件:

00000001000000000000002D.partial
00000002000000000000002D
        (00000001000000000000002D.partial 的内容会拷贝到 00000002000000000000002D)
00000002.history
         1       0/2D15D7D0      no recovery target specified

假设还有一个备库叫备库2,备库2如何能顺利的对接到已激活的备库1呢?
有个前提条件

  1. 备库2在TL1这条时间线上,还没有接收到00000001000000000000002D 这个文件。
    把00000002.history拷贝到备库2的pg_xlog。

备库2会在应用完00000001000000000000002C后请求下一个时间线的 00000002000000000000002D 文件。
这样就能完美对接。

时间: 2024-09-25 01:51:18

PostgreSQL promote过程 和 一主多备 时间线 无缝对接 详解的相关文章

Mysql + keepalived 实现双主热备读写分离

Mysql + keepalived 实现双主热备读写分离 架构图 系统:CentOS6.4_X86_64 软件版本:Mysql-5.6.12,Keepalived-1.2.7 环境简介: 1.Master-A 192.168.1.168 (Mysql+Keepalived) 2.Master-B 192.168.1.169 (Mysql+Keepalived) 3.写入VIP 192.168.100 (168主,169从) 4.读取VIP 192.168.200 (169主,168从) 此处略

【DG】主rac + 备rac dg 部署

[DG]主rac + 备rac dg 部署 一.1  BLOG文档结构图       一.2  前言部分   一.2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① 主库为rac,备库为rac的物理dg的搭建(重点) ② dbca 静默方式创建rac数据库 ③ 如何将数据库加入crsctl管理 ④ rac库修改归档路径和归档模式 ⑤ 如何添加standby日志 ⑥ 简单物理dg的维护     Tips:    

10g 一主多备的搭建技巧

在数据库环境中,一主一备是比较传统的使用方式,在灾难发生的时候,可以灵活的切换主备角色,依然可以保持服务的可访问性.但是一些核心系统来说还是会有更多的过滤,一主一备似乎还是不够稳妥,如果主备出现问题,如果有另外一个备库还是有可选的余地,这种情况不是不可能发生,正是因为核心业务的需要还是需要保证数据的安全. 很多场景下,一主两备会保持这样的场景,一主一备在同一个区域内,这样在出现问题的时候方便切换,如果区域出现故障,可以保证异地的机房可以顺利承接服务. 比如下面的这种方式是比较传统的一主一备的方式

CENTOS 6.3下MYSQL主主互备架构配置

MySQL主主互备结构是基于mysql增量日志基础上的,区别于主从复制结构. 在主主复制结构中,两台服务器的任何一台上面的数据库存发生了改变都会同步到另一台服务器上,这个改变是基于sql语句的改变,如果删除系统数据库源文件或删除后新创建同名MYSQL表实现同步则无效.这样两台服务器互为主从,并且都能向外提供服务,这就比使用主从复制具有更好的性能. 接下来我将使用两个相同的环境来实现这个效果: 系统环境:centos6.3 数据库: mysql-5.6.10 注:在做此项配置之前首先要保证数据库当

MySQL数据库主主互备模式的配置

MySQL双主-高可用 资源规划 主机名 os 版本 MySQL 版本 主机 IP MySQL VIP db01.lyk.com centos 6.4 mysql-5.6.21-linux-glibc2.5-x86_64 172.31.30.12 172.31.30.222 db02.lyk.com centos 6.4 mysql-5.6.21-linux-glibc2.5-x86_64 172.31.30.11 3.修改MySQL配置文件 修改DB01的配置文件: vi /etc/my.cn

MySQL 处理插入过程中的主键唯一键重复值的解决方法_Mysql

本篇文章主要介绍在插入数据到表中遇到键重复避免插入重复值的处理方法,主要涉及到IGNORE,ON DUPLICATE KEY UPDATE,REPLACE:接下来就分别看看这三种方式的处理办法. IGNORE 使用ignore当插入的值遇到主键(PRIMARY KEY)或者唯一键(UNIQUE KEY)重复时自动忽略重复的记录行,不影响后面的记录行的插入, 创建测试表 CREATE TABLE Tignore (ID INT NOT NULL PRIMARY KEY , NAME1 INT )d

PostgreSQL 时间线解析

"时间线"(Timeline)是PG一个很有特色的概念,在备份恢复方面的文档里面时有出现.但针对这个概念的详细解释却很少,也让人不太好理解.我们在此仔细解析一下. 时间线的引入 为了理解引入时间线的背景,我们来分析一下,如果没有时间线,会有什么问题?先举个将数据库恢复到以前时间点的例子.假设在一个数据库的运行过程中,DBA在周三12:00AM删掉了一个关键的表,但是直到周五中午才发现这个问题.这个时候DBA拿出最初的数据库备份,加上存在归档目录的日志文件,将数据库恢复到周三11:00A

转[Android]APK打包过程详解(一)

原文地址:http://jojol-zhou.iteye.com/blog/729271 如作者要求,请留言,博主可删除此博文.  这篇文章对android打包过程的每个步骤做了详细的解释,这里我给一个Maven简单版本作为概括  第一步, aapt,如果pom依赖中有apklib,将会先解压,与原文件一起产生aidl r等文件. 第二步, aidl,javac,编译, 和传统maven编译一样, 需要解决依赖, 包冲突等还有scope. 第三步, proguard,混淆,发布包需要,会把所有依

Win 2000系统引导过程详解(2)

过程|详解 表一则列出了在系统引导的不同阶段所引用的文件. 表一 在这里,我们暂不讨论Windows 2000操作系统的内部工作机制,以下通过图文结合的方式,简要给大家说明在这五个阶段,操作系统都在干些什么,那些程序发挥了作用. 第一步,预引导阶段,过程如图二所示,首先包括了系统加电自检,这个过程完成硬件设备的枚举和配置.其次计算机BIOS确定引导设备的位置,加载并运行Master Boot Record(MBR)主引导区内容(如lilo等).然后扫描分区表,定位活动分区,并将活动分区上的引导扇