Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 混合事务复制和日志传送?_Sql Server_Sql Server 2008_Replication_Database Replication_Log Shipping - Fatal编程技术网

Sql server 混合事务复制和日志传送?

Sql server 混合事务复制和日志传送?,sql-server,sql-server-2008,replication,database-replication,log-shipping,Sql Server,Sql Server 2008,Replication,Database Replication,Log Shipping,我使用推式事务复制将一个大型数据库(接近1TB)复制到三个远程服务器。订阅服务器是只读的。每月一天内(从其他来源)插入和更新大量数据。它总是在一天之后复制失败,我们每个月都从备份手动初始化复制 是否可以在插入日之前切换到日志传送,并在批量插入日志传送之后切换回事务复制?因此,无需复制大备份文件进行重新初始化 否。事务性复制是逻辑的,而日志传送是物理的。你不能随意在两者之间切换。但是,如果您的订阅者一开始是只读的,那么事务性复制就可以用日志传送来代替,代价是更新稍微延迟,并且每次应用日志时都必须断

我使用推式事务复制将一个大型数据库(接近1TB)复制到三个远程服务器。订阅服务器是只读的。每月一天内(从其他来源)插入和更新大量数据。它总是在一天之后复制失败,我们每个月都从备份手动初始化复制


是否可以在插入日之前切换到日志传送,并在批量插入日志传送之后切换回事务复制?因此,无需复制大备份文件进行重新初始化

否。事务性复制是逻辑的,而日志传送是物理的。你不能随意在两者之间切换。但是,如果您的订阅者一开始是只读的,那么事务性复制就可以用日志传送来代替,代价是更新稍微延迟,并且每次应用日志时都必须断开备用站点上的读卡器(通常情况远没有听起来那么糟糕)。考虑到日志传送与事务性复制相比效率更高、问题更少,我会毫不犹豫地进行此替换。我怀疑您是否需要按计划重新初始化。我已经让复制拓扑运行了很长一段时间,而不需要重新初始化。而当我们这样做的时候,仅仅是因为有一个模式的改变没有起到很好的作用。当您说大量数据无法复制时,这是什么意思?复制将很乐意为订阅者提供巨大的数据更改。如果您遇到延迟限制的问题,您可以增加延迟限制,也可以在发布服务器上将大型事务分解为小型事务。您还可以选择为日志读取器代理设置MaxCmdsInTran选项,让它为您中断事务