1.介绍
High-Availability Data Replication(以下简称HDR)是SinoDB的一种数据复制技术。它由一对服务器组成:主服务器和HDR辅助服务器,支持同步和异步两种复制模式。在同步模式下,主服务器上的事务不会立马提交,直到它接收到来自HDR辅助服务器的确认。因此,HDR辅助服务器可以立即准备取代主服务器的位置。在异步模式下,只有在检查点时才会同步主服务器和HDR辅助服务器。HDR的一个特征是它使用半双工通信协议,因此对网路延迟特别敏感。
2.安装
2.1操作系统安装
安装Linux(CentOS 7.*),安装过程略。
2.2系统设置
  1、关闭防火墙;
  2、设置 /etc/hosts
| primary | hdr | 
|---|---|
| vi /etc/hosts | vi /etc/hosts | 
| 192.168.10.140 primary | 192.168.10.140 primary | 
| 192.168.10.142 hdr | 192.168.10.142 hdr | 
2.3安装数据库
数据库安装过程略
2.4数据库实例设置
onconfig配置
| primary | hdr | 
|---|---|
| ROOTNAME rootdbs | |
| ROOTPATH /gpfs/chunks/rootdbs | |
| ROOTOFFSET 0 | |
| ROOTSIZE 300000 | |
| PHYSFILE 50000 | |
| LOGFILES 6 | |
| LOGSIZE 10000 | |
| SERVERNUM 0 | SERVERNUM 2 | 
| DBSERVERNAME primary | DBSERVERNAME hdr | 
| NETTYPE soctcp,1,50,NET | |
| SDS_ENABLE 0 | |
| TEMPTAB_NOLOG 1 | 
sqlhosts配置
| primary | hdr | 
|---|---|
| g_cluster group - - i=110 | |
| primary onsoctcp 192.168.10.140 13000 g=g_cluster | |
| hdr onsoctcp 192.168.10.142 13000 g=g_cluster | 
.rhosts配置
| primary | hdr | 
|---|---|
| primary | |
| hdr | |
| 192.168.10.140 | |
| 192.168.10.142 | 
2.5设置HDR
| primary | hdr | 
|---|---|
| onmode -d primary hdr | 
onstat -可以看到已切换成主服务器:
Sinoregal SinoDB Dynamic Server Version 12.10.FC8 -- On-Line (Prim) -- Up 02:14:56 -- 172660 Kbytes
online.log里也可以看到这样的信息:
16:18:11  DR: new type = primary, secondary server name = hdr 
16:18:11  DR: Trying to connect to secondary server = hdr
16:18:14  DR: Cannot connect to secondary server
16:18:14  DR: Turned off on primary server
| primary | hdr | 
|---|---|
| ontape -s -L 0 | 
将primary的零级备份文档复制到hdr上。
| primary | hdr | 
|---|---|
| ontape –p | 
可以看到还原成fast recovery的状态:
Sinoregal SinoDB Dynamic Server Version 12.10.FC8 -- Fast Recovery -- Up 00:00:21 -- 148084 Kbytes
| primary | hdr | 
|---|---|
| onmode -d secondary primary | 
过一下子,就更新状态了:
Sinoregal SinoDB Dynamic Server Version 12.10.FC8 -- Read-Only (Sec) -- Up 00:00:43 -- 156276 Kbytes
onstat -g dri检查:
Sinoregal SinoDB Dynamic Server Version 12.10.FC8 -- On-Line (Prim) -- Up 00:59:02 -- 172660 Kbytes
Data Replication at 0x459f6028: 
  Type           State        Paired server        Last DR CKPT (id/pg)    Supports Proxy Writes   
  primary        on           hdr                           8 / 6          NA
  DRINTERVAL   0 
  DRTIMEOUT    30 
  DRAUTO       0 
  DRLOSTFOUND  /home/informix/etc/dr.lostfound 
  DRIDXAUTO    0 
  ENCRYPT_HDR  0 
  Backlog      0 
  Last Send    2023/08/14 17:35:15 
  Last Receive 2023/08/14 17:35:15 
  Last Ping    2023/08/14 17:34:57 
  Last log page applied(log id,page): 8,9