Greenplum——段死机后恢复

  

一、备份原理:

  

GPDB4。x中:是基于文件复制同步,如果个别段宕机,整个数据库依然可以运行,当镜子宕机时,主要会记录在这个阶段文件变化的数据块,等到镜子恢复了,再把数据块复制过去;当主宕机了,那么对于镜子的节点就会替换主,记录文件变化的数据块,等到初级恢复了,它就变成了镜子,丢失的数据就会被复制过来,这里虽然可以继续运行,但是存在一个问题,那就是主要和镜子调换了,导致个别机器主要比其他机器多,负载不均衡,最好还是把它从新恢复过正常对应关系来
 Greenplum——段死机后恢复

  

二、恢复:

  

2.1,使用sql查询段状态:

  

testdb=# select * from gp_segment_configuration;
存在部分下来机的时候,在关闭的GPDB的时候,我们可以看到
 Greenplum——段死机后恢复”> <br/>再次启动时也一样,GPDB会忽略掉下来机的部分,同时开启镜子备用<br/> <img src=

  

2.1,使用配置文件生成恢复文件

  

 Greenplum——段死机后恢复”> <br/>可以看到生成的配置文件里包含了需要恢复的段节点<br/> <img src=

  

2.2,使用配置文件开始恢复机器

  

 Greenplum——段死机后恢复

  

2.3,开启另外一个窗口,查看恢复状态:gpstate - m

  

不:正在恢复中,必须等待所有的都同步才行
 Greenplum——段死机后恢复

  

2.4,存在:作为主要,说明有将镜子当主要使用了,必须等待所有恢复完毕之后,才能调换过来,调换过程会重启GPDB

  

执行命令:gprecoverseg - r
 Greenplum——段死机后恢复

  

2.5,全部交换之后,查看备用镜子的状态gpstate - m

  

 Greenplum——段死机后恢复

  

2.6, sql查询各节点信息,都为上升状态

  

 Greenplum——段死机后恢复

Greenplum——段死机后恢复