Squids DBMotion再添新库同步能力,本期增加了对openGauss数据库的同步支持。
openGauss数据库是一款开源关系型数据库管理系统,采用木兰宽松许可证v2发行。openGauss内核深度融合华为在数据库领域多年的经验,结合企业级场景需求,持续构建竞争力特性。这是一款全面友好开放,携手伙伴共同打造的企业级开源关系型数据库。openGauss提供面向多核架构的极致性能、全链路的业务、数据安全、基于AI的调优和高效运维的能力。openGauss依赖于社区的代码贡献,目前最新的版本为5.0.0。
新建同步任务
-
新建任务时,用户可以选择openGauss数据库,输入IP、端口、用户名和密码、数据库名后就能够测试数据库连接。
-
用户可以选择需要同步的表,并设置是否启用告警,配置为单向还是双向同步以及冲突策略,确认要同步的起始位点(如需要从最新位点开始同步,则点击“获取源库当前位点”,DBMotion将为您自动填充好增量起始位点)。
-
用户确认配置并预检查成功以后,就可以创建任务并运行了。
-
进入任务详情,查看增量同步的状态,可以看到当前增量同步的速率和状态是否正常。
测试数据同步
-
我们在源库和目标库的t1表结构和数据如下:t1有两个列, c1 为整数列,c2为字符串列。目前只有一行数据(2,bb)。
shang=# \d+ t1
Table "public.t1"
Column | Type | Modifiers | Storage | Stats target | Description
--------+----------------+-----------+----------+--------------+-------------
c1 | integer | not null | plain | |
c2 | character(100) | | extended | |
Indexes:
"t1_pkey" PRIMARY KEY, btree (c1) TABLESPACE pg_default
Has OIDs: no
Options: orientation=row, compression=no
-
我们在源库shang分别插入和更新一行记录,插入(3,bcd)并将bb修改为bb2。
shang=# insert into t1 values (3, 'bcd');
INSERT 0 1
shang=# update t1 set c2='bb2' where c1=2;
UPDATE 1
-
在目标库shang2,我们就可以看到数据是否已经同步过去了。
shang2=# \c shang2 Non-SSL connection (SSL connection is recommended when requiring high-security) You are now connected to database "shang2" as user "omm". shang2=# select * from t1; c1 | c2 ----+------------------------------------------------------------------------------------------------------ 3 | bcd 2 | bb2 (2 rows)
创建反向任务
-
如果用户是双向复制,在确认正向同步正常以后,就可以在结束迁移这里"创建反向同步任务"。
-
反向任务会自动调换源和目标端,填充好IP、端口和数据库名,不会填充用户名和密码(源库和目标库的授权要求不一样,调换后,建议将用户名和密码更换为正确授权的用户)。
-
进入迁移选项配置页面,迁移对象维持不变,用户可以配置并发线程、是否启用告警和反向同步的冲突策略。反向任务的同步位点可以手工输入,也可以点击获取当前最新位点。
-
如果配置确认以及预检查没有问题,就可以创建反向同步任务。
-
此时在原目标库shang2上插入一笔数据。
shang2=# insert into t1 values (4,'opengauss4');
INSERT 0 1
-
就可以在原源库shang上看到这笔数据。
shang=# select * from t1;
c1 | c2
----+------------------------------------------------------------------------------------------------------
3 | bcd
2 | bb2
4 | opengauss4
(3 rows)
查看性能和数据校验
可以在监控报警->性能曲线上看到性能监控指标。
如果需要检查源和目标的对象是否一致,可以在对象校验中执行“立即校验”。
同样也可以检查数据一致性。
安装插件,便捷即用
另外,openGauss的用户使用DBMotion时,可以直接在Datakit上安装插件:
总结
目前,Squids DBMotion已经支持openGauss的单向和双向同步,并且支持对象和数据校验,支持监控报警。
永久免费使用:squids.cn/product/dbmotion
赶紧上squids.cn体验吧!