Greenplum -- 数据迁移(成倍增加计算能力)
admin
2023-02-09 00:40:13
0

前言

GPDB 数据迁移可以通过全量恢复的方式,如果原来有3个机器,每个机器上面有2个Primary, 2个Mirror,那么可以通过扩展3部机器,变成每部机器上一个Primary,1个Mirror,在迁移的过程中,需要保证:

原有的机器利用Primary+Mirror可以组成一个完成的原有集群DB,可以正常启动,这样才能全量恢复,将数据恢复到扩展的机器上。

如下图,将原有机器的P1/P2/P3/M0/M2/M3 迁移到新机器,原有机器依然保留P0/P2/P4/M1/M2/M3能够启动整个数据库

Greenplum -- 数据迁移(成倍增加计算能力)

一、新机器准备工作:

1.1、开始设置新机器的一些参数,这些和之前安装GPDB是一样的,包括新建gpadmin组,gpadmin用户,关闭新机器防火墙

[root@gpsegment2 ~]# systemctl stop firewalld.service
[root@gpsegment2 ~]# systemctl disable firewalld.service

1.2、修改所有机器的hosts文件,同时建立ssh互信免密码登陆

[gpadmin@gpsegment2 ~]$ vim /etc/hosts #修改hosts文件
192.168.56.103 gpmaster
192.168.56.101 gpsegment3
192.168.56.104 gpsegment1
192.168.56.105 gpsegment2
192.168.56.102 gpsegment4
192.168.56.106 gpsegment5
192.168.56.107 gpsegment6

[gpadmin@gpmaster conf]$ gpssh-exkeys -f hostlist #将新机器域名加入到hostlist文件,运行即可建立ssh互信

1.3、在所有新机器建立GPDB安装目录 /opt/greenplum (这个目录需要跟其他旧机器保持一致,同时将文件夹所有权赋予gpadmin用户)

Greenplum -- 数据迁移(成倍增加计算能力)

1.4、和之前安装GPDB一样,压缩并拷贝master机器上的 /opt/greenplum/greenplum-db-4.3.17.0安装包到新机器上,并解压,解压后建立软连接

[gpadmin@localhost greenplum]$ ln -s greenplum-db-4.3.17.0/ greenplum-db
Greenplum -- 数据迁移(成倍增加计算能力)

二、开始迁移数据

迁移设置的目的是,让原有的机器通过组合一半Primary+Mirror暂时先设置为Primary,并且设置为不同步数据;然后将另外一半需要迁移的Primary+Mirror的状态都设置为宕机了,同时都设置为Mirror,并且设置为同步数据中;这样先将数据库启动起来,数据库检查发现有一半Mirror节点宕机了,就忽略了,然后利用其他的先启动,此时,数据库依然可以使用,我们通过GPDB自带的恢复工具,让他自动将宕机的Mirror都全量恢复,如此即可完成数据迁移

2.1、仅主机模式启动GPDB

[gpadmin@gpmaster ~]$ gpstart -m
[gpadmin@gpmaster ~]$ PGOPTIONS='-c gp_session_role=utility' psql #utility模式进入交互
testdb=# set allow_system_table_mods='dml' #设置为允许修改系统配置表

2.2、修改gp_segment_configuration 将要迁移的DB hostname/address 修改到对应的目标机器上,同时将status设置为d状态,role角色设置为m

Greenplum -- 数据迁移(成倍增加计算能力)

2.3、修改gp_segment_configuration 将不需要迁移的DB role角色设置为p,mode设置为c,status设置为u

Greenplum -- 数据迁移(成倍增加计算能力)

2.4、关闭数据库,gpstop,重启数据gpstart -a

有6台机器无法启动,被忽略了,但是正常启动了6台,所以可以使用
[gpadmin@gpmaster ~]$ gpstart -a
Greenplum -- 数据迁移(成倍增加计算能力)

2.5、通过gpstate -m可以查看Mirror状态

3个Mirror是Fail,另外3个被当成主机启动了
Greenplum -- 数据迁移(成倍增加计算能力)

2.6、执行全量恢复数据库

[gpadmin@gpmaster ~]$ gprecoverseg -F
可以查看到数据库已经启动恢复
Greenplum -- 数据迁移(成倍增加计算能力)
开启另外一个窗口,运行gpstate -m可以查看恢复进度
Greenplum -- 数据迁移(成倍增加计算能力)
需要等到所有的节点都恢复成Synchronized状态
Greenplum -- 数据迁移(成倍增加计算能力)
等所有新机器都全量同步完毕之后,因为新机器都设置为Mirror,旧机器的Mirror有一部分被用于Primary,所以需要在运行gprecoverseg -r 让Mirror和Primary恢复正常
[gpadmin@gpmaster ~]$ gprecoverseg -r
Greenplum -- 数据迁移(成倍增加计算能力)

2.8、最后,运行一下,检查是否所有的机器节点都正常了

Greenplum -- 数据迁移(成倍增加计算能力)

相关内容

热门资讯

德国总理:美国正在被伊朗羞辱 德国之声4月27日报道,德国总理默茨在访问一所学校时表示,在当前的持续冲突中,伊朗领导层正试图羞辱美...
理响中国|“长”歌以行,风云激... 光阴如梭,东方潮阔。这里是中国的长三角,世界的长三角。无论过去、现在还是未来,这片土地都因时代而生,...
白宫:特朗普及其国安团队开会讨... 新华社华盛顿4月27日电 美国白宫新闻秘书莱维特27日在记者会上证实,总统特朗普及其国家安全团队当天...
人民日报刊文:日本放开杀伤性武... 日本放开杀伤性武器出口推高地缘冲突风险(国际论坛)常思纯《人民日报》(2026年04月28日 第 0...
医疗保障法草案二审:明确生育保... 满足多样化健康保障需求本报记者 彭 波4月27日,医疗保障法草案二审稿提请十四届全国人大常委会第二十...
天津一景区发生自转旋翼机事故1... 澎湃新闻记者 吕新文中国民用航空华北地区管理局4月22日公布《豪客通航“10•1”天津长芦汉盐旅游区...
卡塔尔埃米尔与美国总统特朗普通... 当地时间24日,卡塔尔埃米尔塔米姆与美国总统特朗普通电话,重点就中东地区局势以及伊朗与美国谈判问题交...
男子30年前被扣押2859克黄... 澎湃新闻记者 王鑫家住辽宁省大连市的潘永嘉近日向澎湃新闻反映称,三十年前,他在大连周水子机场被盖州市...
商务部:取消反制欧盟两家金融机... 中华人民共和国商务部令二〇二六年 第1号鉴于欧盟已取消对中国两家金融机构的制裁措施,现公布《关于取消...
过去24小时共有5艘船只通过霍... 总台记者当地时间24日获悉,过去24小时内,共有5艘船只通过霍尔木兹海峡,其中包括一艘伊朗油轮。(总...