[转] Greenplum 备份和恢复数据库概览

GP推荐你定期备份数据库。这些备份能够被用来恢复你的数据或在系统失败或数据丢失时重建gp数据库系统。你也能使用备份文件来做数据库迁移。

 

1.关于并行备份

GP并行备份工具:gp_dump

GP自动定期备份工具:gpcrondump (对gp_dump的封装)

备份过程:

因为Segments是并行导出,备份所花费的时间应该是按比例的,不管segment的数据如何。Master备份中包含了DDL语句和GP 系统字典表(如 gp_segment_configuration)。Segment备份中包含一个独立segment instance的数据。每个Segment Instance会创建一个dump文件。所有的dump文件组成了总备份集,它们是通过唯一14位timestamp key来识别。

[转] Greenplum 备份和恢复数据库概览

(并行备份数据库)

 

2.关于非并行备份

GP也支持常规的PostgreSQL的dump工具:pg_dump 和 pg_dumpall

----在Master上产生一个大dump文件包含所有segment数据,需要注意master磁盘空间。这个工具主要是用来从常规PostgresQL到GP的数据迁移

另外一个有用的导出数据命令: COPY TO

----允许以文本方式导出全部或部分表数据,在master上

 如果在2个不同segment配置(如:Instance不一样)情况下,GP推荐使用gp_dump和gpcrondump。


3.关于并行恢复

GP并行恢复工具:gp_restore 和 gpdbrestore (对gp_restore封装,和gpcrondump相对应)

该工具通过 timestamp key来校验备份数据集并且恢复数据库对象和数据。数据恢复也是并行的。

[转] Greenplum 备份和恢复数据库概览

(并行数据恢复)

 

4.关于非并行恢复

GP也支持常规的PostgreSQL的恢复工具: pg_restore (与pg_dump、pg_dumpall对应)

注意,在把PostgreSQL dump文件恢复至GP库时,确定dump文件中的CREATE TABLE 是否有加DISTRIBUTED。

 

有时候我们会遇到这种情况,从一个并行备份数据集中做非并行数据恢复。例如,假如要做数据迁移,从4个segments上的迁至5个segments的GP库中。你不能使用并行恢复数据,因为你的备份数据集仅仅只有4个备份文件并且在新系统中数据分布不平衡。一个非并行恢复工具来恢复并行导出数据,拷贝他们至master并且通过master将数据载入到每个segment中。

 [转] Greenplum 备份和恢复数据库概览

                                (非并行恢复数据库)



注意事项:

如果恢复的系统与备份的系统具有相同数量的Instance,使用gp_restore或gpdbrestore命令来恢复。

如果是在不同集群迁移间迁移,必须使用非并行恢复。参见《Greenplum4.2.2管理员指南-20130603》”恢复到配置不同的GPDB系统” 一节。



转载于:https://my.oschina.net/goopand/blog/394084