无论如何,要使事务在日志记录进入repserver之前无法完成?

2020-09-28 13:17发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)(请注意,我在这里使用 prim...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


(请注意,我在这里使用" primary"一词来表示Sybase通常所说的"活动"数据库)

我们有时希望对例行的硬件故障或操作系统问题进行"切换活动"(告诉repserver使用*原为备用数据库的新数据库作为新主数据库)

但是使用典型的复制设置,当旧的主服务器关闭时,如果切换为活动状态,旧的主数据库的事务日志中的事务可能会丢失。

是否要在ASE主数据库上进行设置,以使该数据库中的事务在复制到repserver中之前不会提交?

我了解这里的权衡,repserver中的问题可能会阻止对主数据库的访问(或者至少会减慢其速度)。 这并不保证数据可以到达复制数据库,而只能到达repserver。 但我认为这是一项功能,在某些环境中会很有用。

在此先感谢
本·斯莱德

6条回答
xfwsx85
2020-09-28 13:26

同意Mark。

RepAgent只是按时间顺序将事务日志记录(已提交或未提交)发送到稳定队列,以优化数据传输。

在复制端"应用"这些命令的时间到了,并且只遵守提交顺序。

因此rs_ticket或复制的用户表中任何其他已提交的单行提交的插入/更新将在"大打开事务"仍等待提交/回滚之前应用于复制端。

您可以编写串联事务,在该事务中rs_ticket或等效的单行提交的插入/更新可以首先到达复制,并检查在Replicate上可以在主数据库上提交应用程序事务。

请注意,这仍然是异步操作,并受复制延迟的影响。

我们使用类似的机制来切换DSS报告应用程序,该应用程序基于每分钟复制的时间戳行并以合理的延迟到达,从而将连接从REPLICATE转换为PRIMARY。

HTH

Avinash

一周热门 更多>