gbase8a v953版本兼容模式改造多vc模式

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 Tair(兼容Redis),内存型 2GB
简介: gbase8a v953版本兼容模式改造多vc模式

本手顺适用于在集群需要改变当前VC模式,如兼容模式改多VC模式等情况需求。

注意:多 VC 模式 不支持回退为单 VC 模式,如果删除新增的 VC 只保留最初的一个 VC集群的模式仍然是多 VC 模式。

简介

集群为兼容模式,对原有集群集群增加节点,增加后的节点归属于另外一个新VC,原有的默认VC不变。

步骤概览

  1. 安装新节点
  2. 将新增加的节点从默认VC移出至根VC中
  3. 创建新VC并添加新节点
  4. (可选)重命名VC
  5. (可选)设置用户默认vc
  6. 新建用户、库、权限管理
  7. 数据导入
  8. 数据校验

具体步骤

如下示例为一个两节点的兼容模式的集群,增加一个节点,要求增加后的节点不在默认vc中,归属于另一个新VC。


为新节点准备环境,如配置网络通顺、环境变量等(略)

修改安装文件demo.options文件

1) 设置 dataHost 参数为要安装的节点的 IP;

2) 修改 existCoordinateHost 参数为已存在的 Coordinator 节点的 IP;

3) 修改 existDataHost 参数为已存在的所有 data 节点的 IP


  1. 安装新节点

[gbase@gbase1 gcinstall]$ ./gcinstall.py –silent=demo.options


  1. 将新增加的节点从默认VC移出至根VC中


如上图所示,新增加的节点没有distribution,也不是free_node,而创建新VC的必备条件就是集群中有free node可以添加进新VC中,这步的目的就是将新节点移出至根VC,使其变为free node

  1. 编辑gcChangeInfo.xml文件,将新增的节点IP填入其中


  1. 执行节点移出命令

 

[gbase@gbase1 gcinstall]$ gcadmin rmnodes gcChangeInfo.xml single_vc_rm_to_rc


执行后的结果为原有集群不变,在兼容模式架构下增加了一个freenode


  1. 创建新VC,并添加节点
  2. 生成创建VC模板文件,并填写

[gbase@gbase1 gcinstall]$ gcadmin createvc e vc.xml

[gbase@gbase1 gcinstall]$ vi vc.xml


  1. 根据模板文件创建vc

[gbase@gbase1 gcinstall]$ gcadmin createvc vc1.xml


  1. 为新vc创建distribution

[gbase@gbase1 gcinstall]$ gcadmin distribution gcChangeInfo.xml p 1 d 1 vc vc2 dba_os_password 111111

  1. 初始化新VC

  1. (可选)重命名VC

[gbase@gbase1 gcinstall]$ gcadmin renamevc vcname000001 vc1


  1. (可选)设置用户默认vc


gbase 数据 原单vc更名为vc1,新建vc名为vc2,由于之前为单VC(兼容模式),其中由于集群中只存在一个vc,编写sql时可以不使用vc名,具体表现为:select * from testdb.t;当集群中存在多vc时,vc名不可忽略,具体表现为:select * from vc00001.testdb.t;可以将兼容模式下的所有用户设置缺省vc为vc1(兼容模式下的vc更名为vc1),操作如下,操作后使用sql与兼容模式下sql保持一致。

[gbase@gbase1 gcinstall]$ gccli -utestdb -ptestdb

gbase> select * from testdb.t;

gbase> select * from vc1.testdb.t;

gbase> set default_vc for testdb = 'vc1';

gbase> select * from vc1.testdb.t;



  1. 新建用户、库、权限管理

将兼容版本vc1添加为原所有用户的默认vc后,需要在新建vc2中创建与vc1中同名数据库,用户无法同名,需重新规划,权限与vc1中保持一致,还需新增用户对兼容模式下的vc1中对应库的select权限。

[gbase@gbase1 ~]$ gccli -uroot

gbase> use vc vc2;

gbase> create database testdb;

gbase> create user testdb_vc2 identified by 'testdb';

gbase> grant all on testdb.* to testdb_vc2;

gbase> grant select on vc1.testdb.* to testdb_vc2;

  1. 数据导入

当前集群存在两个VC,其中VC1为源VC,VC2为新建VC,需要将VC1中部分数据导入至VC2中,操作如下:

[gbase@gbase1 gcinstall]$ gccli -ugbase -pgbase

gbase> create table vc2.testdb.t like vc1.testdb.t;

gbase> insert into vc2.testdb.t select * from vc1.testdb.t;

gbase> insert into vc2.testdb.t select * from vc1.testdb.t where c1 < 5;

  1. 数据校验
  2. 源端

[gbase@gbase1 gcinstall]$ gccli -ugbase -pgbase

gbase> desc vc1.testdba.t;

gbase> select sum(crc32(c1)+crc32(c2)+……) from vc1.testdb.t;

  1. 目的端

[gbase@gbase1 gcinstall]$ gccli -ugbase -pgbase

gbase> desc vc2.testdba.t;

gbase> select sum(crc32(c1)+crc32(c2)+……) from vc2.testdb.t;

核验sum值,sum值一致,源数据一致。

相关文章
|
7月前
|
关系型数据库 MySQL
若依框架----如何降低mysql驱动版本?
若依框架----如何降低mysql驱动版本?
154 3
|
1天前
|
SQL 网络安全 数据库
GBase 8a集群V8客户端gccli适配欧拉操作系统绕行方案分析
GBase 8a集群V8客户端gccli适配欧拉操作系统绕行方案分析
|
测试技术 开发者
Guitarpro 8.1升级版本全新的简谱功能介绍
Guitarpro 8.1版本中,已成功推出全新的简谱功能!Guitar Pro是一款非常流行的音乐制谱软件,它支持各种乐器的制谱。在思杰马克丁引入这款软件之后,为它专门定制了中文版,并针对中国用户重新定价。GuitarPro经过5年研发,于2022年发布了全新的8系列版本。在不到1年的时间内,Guitar Pro又增加了广大中国用户期盼已久的简谱功能。
486 0
|
Oracle 关系型数据库 MySQL
arm服务器OceanBase初始化安装体验
OceanBase初始化安装体验
499 0
|
云安全 存储 安全
基础安全架构优化之基于软件定义进行安全架构升级
基础安全架构优化之基于软件定义进行安全架构升级
431 0
基础安全架构优化之基于软件定义进行安全架构升级
|
SQL 关系型数据库 Linux
信创迁移适配预研-达梦数据库DM8服务与客户端工具安装使用
信创迁移适配预研-达梦数据库DM8服务与客户端工具安装使用
499 0
信创迁移适配预研-达梦数据库DM8服务与客户端工具安装使用
|
运维 Kubernetes Cloud Native
Rainbond 5.6 版本发布,增加多种安装方式,优化拓扑图操作体验
Rainbond 5.6 版本,主要致力于提升拓扑图操作效率以及快速安装体验,降低用户使用门槛。
Rainbond 5.6 版本发布,增加多种安装方式,优化拓扑图操作体验
|
缓存
「OushuDB」版本升级 二进制替换升级步骤
请注意需要留下足够的升级与测试时间,避免升级出现问题需要回退到老版本。另外,请在升级前做好数据的备份工作,防止出现意外。
125 0
|
关系型数据库 数据库 PostgreSQL
找对业务G点, 体验酸爽 - PostgreSQL内核扩展指南
基于PostgreSQL打造最好用的私人订制数据库 花了2个通宵,写了一份入门的PostgreSQL内核扩展指南。 希望更多人对PostgreSQL内核扩展有个初步的了解,内核扩展并不需要对数据库内核有非常深的了解,用户只要把重点放在业务上,利用PostgreSQL开放的API实现对数据
23930 2