GBase8aMPP镜像表使用说明

本文介绍了虚拟集群(VC)中的镜像表功能,包括创建镜像表的三种形式(单表、库级和默认镜像属性)、前提条件以及操作限制,如不支持failover、集群状态影响等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简介

虚拟集群(简称vc)为满足用户镜像集群的要求,提出了镜像表功能,通过对表创建镜像关系,来实现集群间的主备备份。

创建镜像表前提条件

1)两个vc的distribution个数必须相同,最新的distribution上hashmap必须一致;

2)两个vc下必须先创建数据库,再使用镜像操作。

创建镜像表的三种形式

1、对单个表创建镜像关系

语句:alter table [vc1.db.]tablename create mirror to vc2 ;

对应取消镜像关系语句:alter table [vc1.db.]tablename delete mirror;

说明:该语句仅对指定的表创建了镜像关系,该表在两个vc下互为备份;

2、以库为单位批量创建镜像关系(alter database create mirror)

语句:alter database [vc1.]dbanme create mirror to vc2;

对应取消镜像关系语句:alter database [vc1.]dbanme delete mirror ;

说明:1)该操作会将该库下已存在的表、存储过程、create function批量的在镜像vc下进行创建,视图、udf 、udaf、同义词不会创建。后续对存储过程与函数的修改与删除则只当前vc进行操作;

2)若有某些表创建失败,均会在warnings中提示,不影响后面其他表创建,该sql不会报错退出。

3、设置库的默认镜像属性(alter database set default mirror)

语句:alter database  [vc1.]dbanme set default mirror=’vc2’;

对应取消镜像关系语句:

alter database  [vc1.]dbanme set default mirror=’null’;

alter database [vc1.]dbanme delete mirror ;

说明:1)该操作是将两个库绑定了镜像关系,也就是在绑定镜像关系的库下创建的表均为镜像表;但该操作执行时,库下已存在的表不会被创建镜像关系;

2)设置默认库镜像关系后,在当前集群创建表t1,但镜像集群下已有同名表,此时在当前集群创建的t1成功,但该表为普通表非镜像表。

限制说明

1、镜像相关语句不支持failover,若执行过程中节点异常可能会导致存在残留文件,可以通过再次执行相关语句或加force的方式解决;

2、当vc不可用时,执行创建镜像关系语句报错;

3、dml或查询语句中只涉及一个表,主vc和镜像vc加起来有可用分片使得表可用,即可执行成功;dml或查询语句中涉及多个表,同一个distribution下的所有表均可用,才会执行成功,否则报错;

4、扩容镜像集群时,需要将两个vc创建相同distribution,在一个vc下执行rebalance操作;

5、节点替换时,需要集群层设置参数gcluster_rebalancing_ignore_mirror=1;

6、不支持表级的备份恢复

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值