SQL Server事务复制在正常创建发布和订阅之后,log reader Job 启动异常,出现“The process could not execute ‘sp_replcmds’ on xxx”等异常日志导致代理服务无法正常启动。 异常现象 参考下图,异常日志如下 Error messages: The process could not execute ‘
Applies to: SQL Server Azure SQL Managed Instance The Replication Log Reader Agent is an executable that monitors the transaction log of each database configured for transactional replication and copies the transactions marked for replication from the transaction log into the distribution database. Note...
适用范围:SQL Server MSlogreader_history表包含与本地分发服务器关联的日志读取器代理的历史记录行。 此表存储在分发数据库中。 展开表 列名称数据类型描述 agent_id int 日志读取器代理的 ID。 runstatus int 运行状态: 1 = 开始。 2 = 成功。 3 = 正在进行。 4 = 空闲。 5 = 重试。 6 = 失...
例如,在一次同步任务启动运行过程中,当该库存在其他数据写入方写入数据时,由于数据库本身的快照特性,SQL Server Reader完全不会获取到写入的更新数据。 上述是在SQL Server Reader单线程模型下数据同步一致性的特性,SQL Server Reader可以根据您配置的信息使用并发数据抽取,因此不能严格保证数据一致性。 当SQL Server Re...
在Microsoft SQL Server 中的事务复制中,SQL 查询中的项目在 Transact-SQL 语句中具有一个空字符串(@destination_table = N”。 在这种情况下,可能会在指定位置收到以下错误消息: 在快照代理中: 值不能为 null。参数名称:strObjectName 在Logreader 代理中: 进程无法在“SERVER”上执行“sp_replcmd...
sp_helplogreader_agent [ [ @publisher = ] N'publisher' ] [ ; ] 参数 [ @publisher = ] N'publisher' 发布服务器的名称。 @publisher为 sysname,默认值为 NULL. 此参数仅适用于非 SQL Server 发布服务器。 此参数的值必须为 NULL SQL Server 发布服务器。 结果集 展开表 列名称数据类型描述 id...
假设在 Microsoft SQL Server 2008 R2、SQL Server 2012、SQL Server 2014 SQL Server 2016 中配置 Oracle 发布。 当HREPL_SEQ超出 2147483647 的 INT 容量时,日志读取器代理将失败。 此外,还会收到以下错误: ORA-01455:转换列时溢出整数数据类型 (源:MSSQL_REPL_ORACLE,错误号:1455) ...
因此事务复制的原理是Log Reader Agent定期读取发布端的日志,汇总日志对发布内容的更改,从而将这些更改变为逻辑操作,从而使得订阅端可以Replay这些操作来打到数据同步的目的。 这里值得注意的是,如果Log Reader Agent还没有扫描最新的修改,事务复制可能造成发布端的日志无法截断。
因此事务复制的原理是Log Reader Agent定期读取发布端的日志,汇总日志对发布内容的更改,从而将这些更改变为逻辑操作,从而使得订阅端可以Replay这些操作来打到数据同步的目的。 这里值得注意的是,如果Log Reader Agent还没有扫描最新的修改,事务复制可能造成发布端的日志无法截断。
Read the SQL Server transaction logs to audit, rollback or replay database schema and data changes