cdr define replication 定义复制

cdr define repl 有若干属性,常用的属性有:

1、冲突解决策略,必须要和业务贴近,否则会出问题;

2、scope,通常用trans,我也实在想象不出来什么情况下用row;

3、ATS|RIS,最好是打印一下,否则数据不一致的情况下,不知道问题在哪里?

4、通常都是立即复制,不知道什么时候会选择滞后复制或定时复制;

5、建议选择fullrow,而不要使用只复制改变的列,这样带来的问题太多了,数据异常之后很难分析;

6、大对象类型和time series参与复制的时候再详细看吧,会非常复杂的。

 

定义复制的属性

master复制会强制要求所有复制参与者的表定义和源端表的定义是完全一样的;

classic复制不会检查源端和目标端的表结构的属性是否一致;

默认都是master复制。如果没有指定mastet server,则参与复制的第一个节点就是master server。

冲突解决策略和scope

scope选项

transaction

row

指定复制频率

--immed

--every=interval

--at=time

设置失败的事务日志

ATS:代表了失败的事务;

RIS:代表了失败的数据行;

三个条件:

  1. 设置ATS|RIS的目录;
  2. 在定义server的时候设置ATS|RIS;
  3. 在定义复制的时候设置ATS|RIS;

仅复制改变的列

如果想实现仅复制改变的列,需要在定义复制的时候设置--fullrow=n。此时ER仅仅复制ERKEY+改变的列。

upsert=update=>insert

此方式带来的缺陷:

  1. ER无法实现upsert;
  2. 不能使用SPL+Timestamp
  3. 不能使用update-anywhere

使用IEEE浮点类型

--floatieee

--floatcanon

启用触发器

复制的目标表上如果有触发器,默认的情况下,当复制的时候触发器是不生效的。通过参数--firetrigger可以激活触发器生效。

GL_USEGLU=1生效必须在数据库创建之前设置。

大对象的复制

默认的情况下不包含大对象的数据列发生改变,则包含大对象的列是不复制的;在设置了--alwaysRepLOBS=y之后,无论任何列发生变化,ER都进行整行复制。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

请叫我曾阿牛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值