Appearance
数据库镜像功能
镜像原理
openPlant®实时数据库交叉备份功能,支持不同数据库间实时数据、历史数据和配置信息等备份,数据库备份支持1->1、1<->1、1->N、N->1,支持实时数据库双机热备相互备份。
镜像配置文件
交叉热备配置文件为replicator.xml,该文件放置在openPlant\config目录下。
文件内配置参数包括:
参数 | 功能含义 |
---|---|
IP="" | 目的数据库IP,例IP="192.168.4.115"。 |
PO="" | 目的数据库端口port,例 PO="8200" 。 |
US="" | 目的数据库用户名, US="sis"。 |
PW="" | 目的数据库密码,PW="openplant"。 |
PN="" | 主数据库源对象,库(如:W3)或者点表或者测点。 |
TN="" | 目的数据库备份对象,库(如:W3)或者点表或者测点。 |
XF=0 | XF:0, calc->calc,das->das。 |
XF=1 | XF:1, calc->das, das->das。 |
SY=0 | SY:0, 同步ID为否,目的和源侧ID不强校验。 |
SY=1 | SY:1, 同步ID为是,优先目的侧和源侧ID一致(保留源ID)。 |
SP | 数据库镜像源端口,从数据库端口开始增加,缺省0。在replicator.xml中增加 SP字段,可以指定数据库镜像使用的动态端口范围 ,需要从sp开始总共预留20个左右的端口范围。重启数据库,镜像配置才能生效。此参数用以网络要求严格需要确定端口使用范围的场景 |
FL | 流量过滤,缺省FL:0,不执行过滤;FL:1,数据一直不变情况下,每30秒发送至镜像端,变化即时发送。 |
AR=1 | AR:1, 缺省值, 中断期间历史支持回补,参数仅在V5.0.4+生效。 |
AR=0 | AR:0, 历史不支持回补,参数仅在V5.0.4+生效。 |
AR=2 | AR:2, 支持历史写入同步,但是中断期间历史不支持回补,参数仅在V5.0.10+生效。 |
EX="" | 镜像排除字段EX,例如EX="LC,HL,LL,ED", 指这些字段内容永不同步,参数仅在V5.0.10+生效。 |
TL="" | 中断期间历史回补时限(单位:天),默认为回补5天内中断数据,参数仅在V5.0.6+生效。 |
镜像典型配置
配置镜像关系时,请确定最高级别存在,如配置W3->W3,请确定源端存在W3,目的侧存在W3。
映射关系 | 配置方式 | 功能含义 |
---|---|---|
数据库->数据库 | W3-->W3 | Master数据库整体备份到Slave数据库 |
节点->数据库 | W3.NODE-->W3 | Master数据库点表NODE和点表下所有测点信息,将备份到Slave数据库。 |
节点->节点 | W3.NODE-->W3.NODE | Master数据库点表NODE和点表下所有测点信息,将备份到Slave数据库NODE点表 |
节点->节点 | W3.NODE-->W3.UNIT | Master数据库点表NODE和点表下所有测点信息,将备份到Slave数据库UNIT点表 |
点->数据库 | W3.NODE.POINT-->W3 | Master数据库测点W3.NODE.POINT 备份至Slave数据库 |
点->节点 | W3.NODE.POINT-->W3.NODE | Master数据库测点W3.NODE.POINT 备份至Slave数据库点表NODE下对应测点,如果测点不存在,则备份开始时Slave数据库会先建测点POINT。 |
点->点 | W3.NODE.POINT-->W3.NODE.POINT | Master数据库测点W3.NODE.POINT 备份至Slave数据库点表NODE下测点POINT。 |
点->点 | W3.NODE.POINT--> W3.NODE.TEST | Master数据库测点W3.NODE.POINT 备份至Slave数据库点表NODE下测点TEST。 |
点->点 | W3.NODE.POINT--> W3.UNIT.TEST | Master数据库测点W3.NODE.POINT 备份至Slave数据库点表UNIT下测点TEST。 |
典型配置示例
1、单库->单库(库名称相同)
数据库A的W3库镜像到数据库B的W3库,数据库A:192.168.4.205:8200,数据库B:192.168.4.206:8200,
请在数据库A服务器上,配置replicator.xml:
<?xml version="1.0" encoding="UTF-8"?>
<openPlant>
<Replicator PN="mirror" IP="192.168.4.206" PO="8200" SY="1" >
<RepItem PN="W3" TN="W3" XF="0" />
</Replicator>
</openPlant>
2、单库->单库(库名称不相同)
数据库A的W3库镜像到数据库B的W4库,数据库A:192.168.4.205:8200,数据库B:192.168.4.206:8200,
请在数据库A服务器上,配置replicator.xml:
<?xml version="1.0" encoding="UTF-8"?>
<openPlant>
<Replicator PN="mirror" IP="192.168.4.206" PO="8200" SY="1" >
<RepItem PN="W3" TN="W4" XF="0" />
</Replicator>
</openPlant>
3、点表->库
数据库A的W3.NODE点表镜像到数据库B的W3库,数据库A:192.168.4.205:8200,数据库B:192.168.4.206:8200
请在数据库A服务器上,配置replicator.xml:
<?xml version="1.0" encoding="UTF-8"?>
<openPlant>
<Replicator PN="mirror" IP="192.168.4.206" PO="8200" SY="1" >
<RepItem PN="W3.NODE" TN="W3" XF="0" />
</Replicator>
</openPlant>
4、点表->点表(点表名称相同)
数据库A的W3.NODE点表镜像到数据库B的W3.NODE库,数据库A:192.168.4.205:8200,数据库B:192.168.4.206:8200
请在数据库A服务器上,配置replicator.xml:
<?xml version="1.0" encoding="UTF-8"?>
<openPlant>
<Replicator PN="mirror" IP="192.168.4.206" PO="8200" SY="1" >
<RepItem PN="W3.NODE" TN="W3.NODE" XF="0" />
</Replicator>
</openPlant>
5、点表->点表(点表名称不相同)
数据库A的W3.NODE点表镜像到数据库B的W3.UNIT库,数据库A:192.168.4.205:8200,数据库B:192.168.4.206:8200
请在数据库A服务器上,配置replicator.xml:
<?xml version="1.0" encoding="UTF-8"?>
<openPlant>
<Replicator PN="mirror" IP="192.168.4.206" PO="8200" SY="1" >
<RepItem PN="W3.NODE" TN="W3.UNIT" XF="0" />
</Replicator>
</openPlant>
6、点->点(点名相同)
数据库A的W3.NODE.POINT01点表镜像到数据库B的W3.NODE.POINT01库,数据库A:192.168.4.205:8200,数据库B:192.168.4.206:8200
请在数据库A服务器上,配置replicator.xml:
<?xml version="1.0" encoding="UTF-8"?>
<openPlant>
<Replicator PN="mirror" IP="192.168.4.206" PO="8200" SY="1" >
<RepItem PN="W3.NODE.POINT01" TN="W3.NODE.POINT01" XF="0" />
</Replicator>
</openPlant>
7、点->点(点名不同)
数据库A的W3.NODE.POINT01点表镜像到数据库B的W3.UNIT.TEST01库,数据库A:192.168.4.205:8200,数据库B:192.168.4.206:8200
请在数据库A服务器上,配置replicator.xml:
<?xml version="1.0" encoding="UTF-8"?>
<openPlant>
<Replicator PN="mirror" IP="192.168.4.206" PO="8200" SY="1" >
<RepItem PN="W3.NODE.POINT01" TN="W3.UNIT.TEST01" XF="0" />
</Replicator>
</openPlant>
8、单库->多个数据库
数据库A的W3库镜像到数据库B的W3库和数据库C的W3库,源数据库A:192.168.4.205:8200,第一目的数据库B:192.168.4.206:8200,第二目的数据库C:192.168.4.207:8200,
请在数据库A服务器上,配置replicator.xml:
<?xml version="1.0" encoding="UTF-8"?>
<openPlant>
<Replicator PN="mirror" IP="192.168.4.206" PO="8200" SY="1" >
<RepItem PN="W3" TN="W3" XF="0" />
</Replicator>
<Replicator PN="mirror" IP="192.168.4.207" PO="8200" SY="1" >
<RepItem PN="W3" TN="W3" XF="0" />
</Replicator>
</openPlant>
9、库<->库(相互镜像)
数据库A的W3库镜像到数据库B的W3库,同时数据库B的W3库镜像到数据库A的W3库,数据库A:192.168.4.205:8200,数据库B:192.168.4.206:8200
请在数据库A服务器上,配置replicator.xml:
<?xml version="1.0" encoding="UTF-8"?>
<openPlant>
<Replicator PN="mirror" IP="192.168.4.206" PO="8200" SY="1" >
<RepItem PN="W3" TN="W3" XF="0" />
</Replicator>
</openPlant>
请在数据库B服务器上,配置replicator.xml:
<?xml version="1.0" encoding="UTF-8"?>
<openPlant>
<Replicator PN="mirror" IP="192.168.4.205" PO="8200" SY="1" >
<RepItem PN="W3" TN="W3" XF="0" />
</Replicator>
</openPlant>