GBase 8a
安装配置
文章

GBase 8a 运维—— 4(多vc镜像配置)

发表于2024-10-17 15:37:0815次浏览0个评论

 

1、创建distribution后,先初始vc1,再向vc1看齐初始化vc2
initnodedatamap from vc1;

2、对比hashmap是否相同(注意如果多次操作,distribution id要多写几个)
select distinct(res.r), count(res.r) from (select count(*) r from
gbase.nodedatamap t where t.data_distribution_id in (1,2) group by
t.hashkey, t.nodeid) res group by res.r;

+---+--------------+
| r | count(res.r) |
+---+--------------+
| 2 |        65536 |
+---+--------------+

3、设置创建镜像表并发数,session级别参数,比如2。
set gcluster_mirror_parallel_count=2;

4、创建镜像
#主/镜 库存在,主表存在,镜表不存在
alter table vc1.testdb.test create mirror to vc2;
#主/镜 库表存在,以下会删除重建镜库下表。
alter table vc1.testdb.test create mirror to vc2 force;
#主库表存在,镜库存在。批量给主库的表创建镜像表。可加force。
alter database vc1.testdb create mirror to vc2; 
alter database vc1.testdb create mirror to vc2 force; 
#主/镜库存在,已有对象无影响,后续对象会镜像
alter database vc1.testdb set default mirror = vc2;

#建表时候创建比如
create table vc1.testdb.t1(id int) mirror to vc2;
create table vc1.testdb.t1 mirror to vc2 as select * from vc1.testdb.t2;

5、查看镜像表和默认镜像vc
select vc_id,index_name,mirror_vc_id from gbase.table_distribution where dbname='***';
show mirror databases;
6、删除镜像表
#按照表为对象删除,数据不动
alter table vc1.testdb.t1 delete mirror; 
#针对库删除所有镜像关系,但数据不动
alter database vc1.testdb delete mirror;
#原有镜像表镜像关系依然存在,后续不产生新的镜像表。
alter database vc1.testdb set default mirror=null;

评论

登录后才可以发表评论