CN104503865A - PostgreSQL快速恢复到任意时间点的方法 - Google Patents

PostgreSQL快速恢复到任意时间点的方法 Download PDF

Info

Publication number
CN104503865A
CN104503865A CN201410754052.8A CN201410754052A CN104503865A CN 104503865 A CN104503865 A CN 104503865A CN 201410754052 A CN201410754052 A CN 201410754052A CN 104503865 A CN104503865 A CN 104503865A
Authority
CN
China
Prior art keywords
xlog
monitoring
database
data file
backup
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410754052.8A
Other languages
English (en)
Other versions
CN104503865B (zh
Inventor
周正中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Hanfei Network Technology Co.,Ltd.
Original Assignee
HANGZHOU SKY-MOBI TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by HANGZHOU SKY-MOBI TECHNOLOGY Co Ltd filed Critical HANGZHOU SKY-MOBI TECHNOLOGY Co Ltd
Priority to CN201410754052.8A priority Critical patent/CN104503865B/zh
Publication of CN104503865A publication Critical patent/CN104503865A/zh
Application granted granted Critical
Publication of CN104503865B publication Critical patent/CN104503865B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种PostgreSQL快速恢复到任意时间点的方法。解决了现有技术不能实时快速备份的问题,技术方案为:包括XLOG归档文件存储步骤,生产数据库实施步骤、数据文件备份存储步骤、数据库STANDBY步骤和监控的步骤。1、利用流复制来备份,解决数据文件备份时产生的大量读的问题。因此数据文件备份不需要读数据库文件,而只需要读xlog或xlog的归档文件。2、利用文件块级别的增量备份来解决数据文件重复备份的带来的数据文件备份容量需求的问题,快照不会产生重复数据,因此非常节约空间。3、利用文件系统克隆技术,将备份集克隆,克隆只产生增量数据,因此解决数据还原的额外容量需求,而且原有备份集还能继续使用。

Description

PostgreSQL快速恢复到任意时间点的方法
技术领域
本发明是一种数据存储方法,特别是涉及一种PostgreSQL快速恢复到任意时间点的方法。
背景技术
现有的PostgreSQL数据库备份有两种方法,逻辑备份和数据文件备份加归档文件备份。逻辑备份的缺陷:1不能做增量备份,例如一个表备份一次后,如果数据变更了一部分,下次逻辑备份还需要全部备份。2备份需开启一个repeatable read隔离级别的事务,在备份期间,已有的数据如果被其他会话更新或删除产生的垃圾数据不能回收,因此备份时间越长,数据库膨胀越厉害。3数据恢复时,只能恢复到备份时间点,不能恢复到故障发生时间点。所以会丢掉一些备份后产生的数据。4逻辑备份的还原时间受到备份集合大小的影响,备份集合越大,还原时间越长。数据文件备份加归档文件备份解决了逻辑备份的缺陷,但是也存在自身的缺陷:1数据文件加归档文件备份的还原时间受到需要的归档文件多少的影响,如果要恢复到任意时间点,需要数据文件备份加上备份检查点后产生的所有归档文件。如果恢复的时间点需要很多归档文件来恢复的话,恢复时间需要很长。数据库变更越频繁,恢复需要的归档文件就越多,恢复时间越长。2如果要解决恢复时间长的问题,那么需要提高数据文件的备份频率,这样又带来一个问题,需要更多的备份空间。3提高数据文件的备份频率,还会增加数据库的读压力。4备份集一旦用作还原后,这个备份集就不能再次使用了,所以如果要保证备份集还能继续使用,则需要额外的空间来保存原有的备份集。
对比技术:CN1784676公开日:2006年6月7日,公开内容:数据库数据恢复系统和方法,本发明涉及例如在用户错误出现之后数据恢复的系统和方法。特别地,可维持储存数据库数据的副本的快照数据库。快照数据库不必储存源数据库上所有数据的完整副本,但是其要共享对两者公用但不必等同的数据。若错误出现在主要数据库上,则数据库可通过用快照文件替换源数据库文件来还原到错误之前的时间点处。另外,一撤销组件可结合快照使用,以使错误接近于较细粒度的时间点。但是只做到这个程度在信息爆炸的时代是不够的,我们仍然需要一种PostgreSQL快速恢复到任意时间点的方法。
发明内容
本发明的目的是为解决目前的技术方案存在无法实现PostgreSQL快速恢复到任意时间点的问题,提供一种PostgreSQL快速恢复到任意时间点的方法。
本发明解决其技术问题所采用的技术方案是:一种PostgreSQL快速恢复到任意时间点的方法,其特征在于:包括XLOG归档文件存储步骤,生产数据库实施步骤、数据文件备份存储步骤、数据库STANDBY步骤和监控的步骤,
所述XLOG归档文件存储步骤包括:
XLOG归档文件存储步骤一:配置网络,防火墙,硬件服务器允许生产数据库和数据文件备份主机连接NFS接口,
XLOG归档文件存储步骤二:配置zfs存储池,将若干块硬盘添加到zfs存储池,配置冗余机制,确保块设备部分损坏可以继续工作,
XLOG归档文件存储步骤三:根据上述步骤创建zfs卷,并配置相应的压缩属性,
XLOG归档文件存储步骤四:配置NFS,允许生产数据库和数据文件备份主机挂载,允许生产数据库写操作;
生产数据库实施步骤包括:
生产数据库实施步骤一:挂载XLOG归档NFS,测试可写性,若测试可写性错误则重新执行XLOG归档文件存储步骤四,
生产数据库实施步骤二:开启归档,并配置归档命令,测试归档文件正常写入XLOG归档NFS目录,
生产数据库实施步骤三:配置流复制,允许数据文件备份主机通过流复制协议将实时数据块变更连接过来;
数据文件备份存储步骤包括:
数据文件备份存储步骤一:配置zfs存储池,将若干块硬盘添加到zfs存储池,配置冗余机制,确保块设备部分损坏可以继续工作,
数据文件备份存储步骤二:创建zfs,配置压缩属性,为每一个生产数据库配置一个zfs,
数据文件备份存储步骤三:配置快照计划任务,定时创建zfs的快照;
数据库STANDBY步骤包括以下步骤:
数据库STANDBY步骤一:配置密码文件,用于通过流复制协议连接生产数据库,
数据库STANDBY步骤二:使用pg_basebackup创建初始数据文件,若此次运行为首次运行时对全量进行备份,
数据库STANDBY步骤三:根据配置的流复制方式,通过流复制协议从生产库实时获取XLOG的变更并实时恢复;
监控的步骤包括以下步骤:
监控的步骤一:添加主机网络的监控,三台硬件主机分别为,监控XLOG归档存储主机,生产数据库主机,数据库STANDBY主机,
监控的步骤二:添加服务的监控,监控XLOG归档存储主机的NFS服务,生产数据库的监听服务,数据库STANDBY的监听服务,
监控的步骤三:添加数据库的监控,监控生产数据库归档的状态和延迟,监控数据库STANDBY流复制的延迟,监控zfs快照的状态。
本发明对数据文件加归档文件的备份加以改进,
1.利用流复制来备份,解决数据文件备份时产生的大量读的问题。因此数据文件备份不需要读数据库文件,而只需要读xlog或xlog的归档文件。
2.利用文件块级别的增量备份来解决数据文件重复备份的带来的数据文件备份容量需求的问题,快照不会产生重复数据,因此非常节约空间。
3.利用文件系统克隆技术,将备份集克隆,克隆只产生增量数据,因此解决数据还原的额外容量需求,而且原有备份集还能继续使用。
4.利用压缩技术,进一步减少备份集的空间占用,归档文件可节约三分之二的空间,数据文件视存储的数据而定,一般也可节约三分之二的空间。
5.利用开源的监控技术,监控流复制的延迟,zfs的健康状态,归档的健康状态。
作为优选,在监控的步骤时,记录时间点之后采用短信通知的方式通知监控人员。
作为优选,所述快照技术只记录增量数据。
作为优选,对XLOG文件归档采用的是流复制的方法进行。
本发明的实质性效果是:1.利用流复制来备份,解决数据文件备份时产生的大量读的问题。因此数据文件备份不需要读数据库文件,而只需要读xlog或xlog的归档文件。2.利用文件块级别的增量备份来解决数据文件重复备份的带来的数据文件备份容量需求的问题,快照不会产生重复数据,因此非常节约空间。3.利用文件系统克隆技术,将备份集克隆,克隆只产生增量数据,因此解决数据还原的额外容量需求,而且原有备份集还能继续使用。4.利用压缩技术,进一步减少备份集的空间占用,归档文件可节约三分之二的空间,数据文件视存储的数据而定,一般也可节约三分之二的空间。5.利用开源的监控技术,监控流复制的延迟,zfs的健康状态,归档的健康状态。
附图说明
图1为本发明中的整体架构图;
图2为本发明中的MonetDBHA架构图。
具体实施方式
下面通过具体实施例,并结合附图,对本发明的技术方案作进一步的具体说明。
实施例:
一种PostgreSQL快速恢复到任意时间点的方法(参见附图1和附图2),包括XLOG归档文件存储步骤,生产数据库实施步骤、数据文件备份存储步骤、数据库STANDBY步骤和监控的步骤,
所述XLOG归档文件存储步骤包括:
XLOG归档文件存储步骤一:配置网络,防火墙,硬件服务器允许生产数据库和数据文件备份主机连接NFS接口,
XLOG归档文件存储步骤二:配置zfs存储池,将若干块硬盘添加到zfs存储池,配置冗余机制,确保块设备部分损坏可以继续工作,
XLOG归档文件存储步骤三:根据上述步骤创建zfs卷,并配置相应的压缩属性,
XLOG归档文件存储步骤四:配置NFS,允许生产数据库和数据文件备份主机挂载,允许生产数据库写操作;
生产数据库实施步骤包括:
生产数据库实施步骤一:挂载XLOG归档NFS,测试可写性,若测试可写性错误则重新执行XLOG归档文件存储步骤四,
生产数据库实施步骤二:开启归档,并配置归档命令,测试归档文件正常写入XLOG归档NFS目录,
生产数据库实施步骤三:配置流复制,允许数据文件备份主机通过流复制协议将实时数据块变更连接过来;
数据文件备份存储步骤包括:
数据文件备份存储步骤一:配置zfs存储池,将若干块硬盘添加到zfs存储池,配置冗余机制,确保块设备部分损坏可以继续工作,
数据文件备份存储步骤二:创建zfs,配置压缩属性,为每一个生产数据库配置一个zfs,
数据文件备份存储步骤三:配置快照计划任务,定时创建zfs的快照;
数据库STANDBY步骤包括以下步骤:
数据库STANDBY步骤一:配置密码文件,用于通过流复制协议连接生产数据库,
数据库STANDBY步骤二:使用pg_basebackup创建初始数据文件,若此次运行为首次运行时对全量进行备份,
数据库STANDBY步骤三:根据配置的流复制方式,通过流复制协议从生产库实时获取XLOG的变更并实时恢复;
监控的步骤包括以下步骤:
监控的步骤一:添加主机网络的监控,三台硬件主机分别为,监控XLOG归档存储主机,生产数据库主机,数据库STANDBY主机,
监控的步骤二:添加服务的监控,监控XLOG归档存储主机的NFS服务,生产数据库的监听服务,数据库STANDBY的监听服务,
监控的步骤三:添加数据库的监控,监控生产数据库归档的状态和延迟,监控数据库STANDBY流复制的延迟,监控zfs快照的状态。
在监控的步骤时,记录时间点之后采用短信通知的方式通知监控人员。所述快照技术只记录增量数据。对XLOG文件归档采用的是流复制的方法进行。
本实施例有以下优点:1.利用流复制来备份,解决数据文件备份时产生的大量读的问题。因此数据文件备份不需要读数据库文件,而只需要读xlog或xlog的归档文件。2.利用文件块级别的增量备份来解决数据文件重复备份的带来的数据文件备份容量需求的问题,快照不会产生重复数据,因此非常节约空间。3.利用文件系统克隆技术,将备份集克隆,克隆只产生增量数据,因此解决数据还原的额外容量需求,而且原有备份集还能继续使用。4.利用压缩技术,进一步减少备份集的空间占用,归档文件可节约三分之二的空间,数据文件视存储的数据而定,一般也可节约三分之二的空间。5.利用开源的监控技术,监控流复制的延迟,zfs的健康状态,归档的健康状态。
以上所述的实施例只是本发明的一种较佳的方案,并非对本发明作任何形式上的限制,在不超出权利要求所记载的技术方案的前提下还有其它的变体及改型。

Claims (4)

1.一种PostgreSQL快速恢复到任意时间点的方法,其特征在于:包括XLOG归档文件存储步骤,生产数据库实施步骤、数据文件备份存储步骤、数据库STANDBY步骤和监控的步骤,
所述XLOG归档文件存储步骤包括:
XLOG归档文件存储步骤一:配置网络,防火墙,硬件服务器允许生产数据库和数据文件备份主机连接NFS接口,
XLOG归档文件存储步骤二:配置zfs存储池,将若干块硬盘添加到zfs存储池,配置冗余机制,确保块设备部分损坏可以继续工作,
XLOG归档文件存储步骤三:根据上述步骤创建zfs卷,并配置相应的压缩属性,
XLOG归档文件存储步骤四:配置NFS,允许生产数据库和数据文件备份主机挂载,允许生产数据库写操作;
生产数据库实施步骤包括:
生产数据库实施步骤一:挂载XLOG归档NFS,测试可写性,若测试可写性错误则重新执行XLOG归档文件存储步骤四,
生产数据库实施步骤二:开启归档,并配置归档命令,测试归档文件正常写入XLOG归档NFS目录,
生产数据库实施步骤三:配置流复制,允许数据文件备份主机通过流复制协议将实时数据块变更连接过来;
数据文件备份存储步骤包括:
数据文件备份存储步骤一:配置zfs存储池,将若干块硬盘添加到zfs存储池,配置冗余机制,确保块设备部分损坏可以继续工作,
数据文件备份存储步骤二:创建zfs,配置压缩属性,为每一个生产数据库配置一个zfs,
数据文件备份存储步骤三:配置快照计划任务,定时创建zfs的快照;
数据库STANDBY步骤包括以下步骤:
数据库STANDBY步骤一:配置密码文件,用于通过流复制协议连接生产数据库,
数据库STANDBY步骤二:使用pg_basebackup创建初始数据文件,若此次运行为首次运行时对全量进行备份,
数据库STANDBY步骤三:根据配置的流复制方式,通过流复制协议从生产库实时获取XLOG的变更并实时恢复;
监控的步骤包括以下步骤:
监控的步骤一:添加主机网络的监控,三台硬件主机分别为,监控XLOG归档存储主机,生产数据库主机,数据库STANDBY主机,
监控的步骤二:添加服务的监控,监控XLOG归档存储主机的NFS服务,生产数据库的监听服务,数据库STANDBY的监听服务,
监控的步骤三:添加数据库的监控,监控生产数据库归档的状态和延迟,监控数据库STANDBY流复制的延迟,监控zfs快照的状态。
2.根据权利要求1所述的PostgreSQL快速恢复到任意时间点的方法,其特征在于:在监控的步骤时,记录时间点之后采用短信通知的方式通知监控人员。
3.根据权利要求1或2所述的PostgreSQL快速恢复到任意时间点的方法,其特征在于:所述快照技术只记录增量数据。
4.根据权利要求1或2所述的PostgreSQL快速恢复到任意时间点的方法,其特征在于:对XLOG文件归档采用的是流复制的方法进行。
CN201410754052.8A 2014-12-10 2014-12-10 PostgreSQL快速恢复到任意时间点的方法 Active CN104503865B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410754052.8A CN104503865B (zh) 2014-12-10 2014-12-10 PostgreSQL快速恢复到任意时间点的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410754052.8A CN104503865B (zh) 2014-12-10 2014-12-10 PostgreSQL快速恢复到任意时间点的方法

Publications (2)

Publication Number Publication Date
CN104503865A true CN104503865A (zh) 2015-04-08
CN104503865B CN104503865B (zh) 2017-09-29

Family

ID=52945265

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410754052.8A Active CN104503865B (zh) 2014-12-10 2014-12-10 PostgreSQL快速恢复到任意时间点的方法

Country Status (1)

Country Link
CN (1) CN104503865B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105138417A (zh) * 2015-07-10 2015-12-09 上海爱数软件有限公司 一种基于zfs send的异步复制方法
CN107908755A (zh) * 2017-11-21 2018-04-13 郑州云海信息技术有限公司 一种快照文件处理方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7412460B2 (en) * 2003-06-19 2008-08-12 International Business Machines Corporation DBMS backup without suspending updates and corresponding recovery using separately stored log and data files
CN102096613A (zh) * 2010-12-30 2011-06-15 上海爱数软件有限公司 一种生成快照的方法及装置
US20110161295A1 (en) * 2009-12-31 2011-06-30 David Ngo Systems and methods for analyzing snapshots
CN102591982A (zh) * 2011-01-07 2012-07-18 赛门铁克公司 执行增量sql服务器数据库备份的方法和系统
CN102708158A (zh) * 2012-04-23 2012-10-03 杭州梵艺科技有限公司 一种PostgreSQL云存储归档调度系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7412460B2 (en) * 2003-06-19 2008-08-12 International Business Machines Corporation DBMS backup without suspending updates and corresponding recovery using separately stored log and data files
US20110161295A1 (en) * 2009-12-31 2011-06-30 David Ngo Systems and methods for analyzing snapshots
CN102096613A (zh) * 2010-12-30 2011-06-15 上海爱数软件有限公司 一种生成快照的方法及装置
CN102591982A (zh) * 2011-01-07 2012-07-18 赛门铁克公司 执行增量sql服务器数据库备份的方法和系统
CN102708158A (zh) * 2012-04-23 2012-10-03 杭州梵艺科技有限公司 一种PostgreSQL云存储归档调度系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105138417A (zh) * 2015-07-10 2015-12-09 上海爱数软件有限公司 一种基于zfs send的异步复制方法
CN105138417B (zh) * 2015-07-10 2018-07-20 上海爱数信息技术股份有限公司 一种基于zfs send的异步复制方法
CN107908755A (zh) * 2017-11-21 2018-04-13 郑州云海信息技术有限公司 一种快照文件处理方法及装置

Also Published As

Publication number Publication date
CN104503865B (zh) 2017-09-29

Similar Documents

Publication Publication Date Title
CN108376109B (zh) 将来源阵列的卷复制到目标阵列的设备和方法、存储介质
US10503616B2 (en) Periodic data replication
US7809691B1 (en) System and method of applying incremental changes prior to initialization of a point-in-time copy
US10802747B2 (en) Performing backup operations using replicas
US9990253B1 (en) System and method for recovering file systems without a replica
US8364648B1 (en) Recovering a database to any point-in-time in the past with guaranteed data consistency
US11138156B2 (en) Continuous data management system and operating method thereof
CN102891849B (zh) 业务数据同步方法、恢复方法及装置和网络设备
CN105302667B (zh) 基于集群架构的高可靠性数据备份与恢复方法
US9026499B1 (en) System and method for recovering file systems by restoring partitions
CN108351821B (zh) 数据恢复方法及存储设备
US8713282B1 (en) Large scale data storage system with fault tolerance
CN106815097A (zh) 数据库容灾系统和方法
WO2018098972A1 (zh) 一种日志恢复方法、存储装置和存储节点
CN105955836A (zh) 一种冷热备份自动演练多功能系统
CN107066357A (zh) 一种数据库合成备份和挂载恢复方法
CN103914359A (zh) 一种数据恢复方法及装置
CN102368267A (zh) 一种维护分布式系统中副本一致性的方法
CN107003890A (zh) 高效地提供虚拟机参考点
CN102819615A (zh) 一种基于应用快照的数据库持续数据保护方法
CN105487940A (zh) 灾备端、生产端及两者之间的数据恢复方法
CN104486387B (zh) 一种数据同步处理方法及系统
CN107340971A (zh) 一种数据存储与恢复架构与方法
US9286163B2 (en) Data recovery scheme based on data backup status
CN104503865A (zh) PostgreSQL快速恢复到任意时间点的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP02 Change in the address of a patent holder

Address after: 310000 room 821, building 1, Xinjun building, 330 Internet of things street, Xixing street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: Hangzhou Sky-mobi Technology Co., Ltd.

Address before: 10, 310013, The Union Buildings, No. 2, Bauhinia Road, Hangzhou, Zhejiang, Xihu District

Patentee before: Hangzhou Sky-mobi Technology Co., Ltd.

CP02 Change in the address of a patent holder
TR01 Transfer of patent right

Effective date of registration: 20210420

Address after: No. 181, erbatou, taimuyang village, Qinyu Town, Fuding City, Ningde City, Fujian Province

Patentee after: Chen Ximei

Address before: 310000 room 821, building 1, Xinjun building, 330 Internet of things street, Xixing street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee before: HANGZHOU SKY NETWORK TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210706

Address after: 21f-a, Shenmao business center, 59 Xinwen Road, Meiling community, Lianhua street, Futian District, Shenzhen, Guangdong 518000

Patentee after: Shenzhen Hanfei Network Technology Co.,Ltd.

Address before: 355200 no.181 erbatou, taimuyang village, Qinyu Town, Fuding City, Ningde City, Fujian Province

Patentee before: Chen Ximei

TR01 Transfer of patent right