版本:latest

oGRAC两节点多写功能测试DEMO使用指南

本文旨在介绍完成oGRAC的两节点集群的安装部署后,如何使用自带的测试DEMO脚本测试两节点的多写功能。

  • 执行该脚本需要输入安装时设置的oGRAC系统管理员密码、和测试执行过程中需要创建的用户名(请不要使用数据库系统中已经存在的用户)。
  • 执行prepare后,在准备阶段,会在oGRAC数据库中自动创建测试用户、创建目标测试表,并在后台启动向两个节点同时执行向目标测试表insert的循环操作,具体操作为:每隔0.25秒向两个节点同时插入25条数据,也就是说每秒会向目标测试表插入200条数据。
  • prepare后执行runtest,执行后,脚本会循环向两个节点同时执行查询目标测试表当前总条数的操作,每隔1秒查询一次,查询的范围为自当前查询时刻向前4秒的时间范围,也就是说查询到的数量会在600到800条之间。
  • 在测试完成后,需要执行stop停止测试,因为在prepare阶段启动了后台写的循环进程。
  • 无需自己输入节点IP,脚本会自动获取当前节点IP和对端节点IP。
  • 脚本使用的默认端口1611进行数据库连接操作。

使用前须知

测试执行

1. 登录集群中任意节点执行如下命令

shell
su -s /bin/bash ograc
cd /opt/ograc/ograc/server/admin/scripts/
# SYS_PASSWORD是oGRAC安装时输入的系统管理员的密码,TEST_USER_NAME是运行这个多写测试DEMO时新建的用户名,请不要使用数据库系统中已经存在的用户
sh multi_master_test.sh <SYS_PASSWORD> <TEST_USER_NAME> --prepare
sh multi_master_test.sh <SYS_PASSWORD> <TEST_USER_NAME> --runtest

执行上述测试后,屏幕会打印如下结果:

shell
检查集群状态...
 集群状态正常
当前节点IP: x.x.x.1
对端节点IP: x.x.x.2
执行读测试模式...
启动读测试...
读测试日志: /tmp/db_test_logs/read_test.log
 Ctrl+C 停止读测试
开始时间: Wed Feb  4 08:32:46 PM CST 2026
[2026-02-04 20:32:46] 当前节点: 650, 对端节点: 650, 时间范围: 2026-02-04 20:32:42 到 2026-02-04 20:32:46
[2026-02-04 20:32:47] 当前节点: 625, 对端节点: 625, 时间范围: 2026-02-04 20:32:43 到 2026-02-04 20:32:47
[2026-02-04 20:32:48] 当前节点: 650, 对端节点: 650, 时间范围: 2026-02-04 20:32:44 到 2026-02-04 20:32:48
[2026-02-04 20:32:49] 当前节点: 650, 对端节点: 650, 时间范围: 2026-02-04 20:32:45 到 2026-02-04 20:32:49
[2026-02-04 20:32:50] 当前节点: 650, 对端节点: 650, 时间范围: 2026-02-04 20:32:46 到 2026-02-04 20:32:50
[2026-02-04 20:32:52] 当前节点: 650, 对端节点: 650, 时间范围: 2026-02-04 20:32:47 到 2026-02-04 20:32:51
[2026-02-04 20:32:53] 当前节点: 650, 对端节点: 650, 时间范围: 2026-02-04 20:32:49 到 2026-02-04 20:32:53
[2026-02-04 20:32:54] 当前节点: 650, 对端节点: 650, 时间范围: 2026-02-04 20:32:50 到 2026-02-04 20:32:54
[2026-02-04 20:32:55] 当前节点: 650, 对端节点: 650, 时间范围: 2026-02-04 20:32:51 到 2026-02-04 20:32:55
[2026-02-04 20:32:56] 当前节点: 625, 对端节点: 625, 时间范围: 2026-02-04 20:32:52 到 2026-02-04 20:32:56
[2026-02-04 20:32:57] 当前节点: 650, 对端节点: 650, 时间范围: 2026-02-04 20:32:53 到 2026-02-04 20:32:57
......

表示当前集群中两个节点同时执行写入的情况下,两个节点查询到的数据实时一致

2. 停止测试

shell
# 如果不在ograc用户下,需要切换用户,如果当前已经在ograc用户下,不需要再切换
su -s /bin/bash ograc
cd /opt/ograc/ograc/server/admin/scripts/
sh multi_master_test.sh --stop