十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
关于sql server2012数据库复制同步时报错:“
成都创新互联公司是一家专业从事成都网站设计、成都网站制作、网页设计的品牌网络公司。如今是成都地区具影响力的网站设计公司,作为专业的成都网站建设公司,成都创新互联公司依托强大的技术实力、以及多年的网站运营经验,为您提供专业的成都网站建设、营销型网站建设及网站设计开发服务!该作业失败。 计划 1127 (复制代理计划。) 调用了该作业。最后运行的是步骤 1 (运行代理。)。.
已以用户 NT SERVICE\SQLSERVERAGENT 的身份执行。 无法删除目录 'F:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\ReplData\unc\20120723102721\'。请查看 xp_cmdshell 的安全上下文,并关闭其他可能正在访问该目录的进程。 [SQLSTATE 42000] (错误 20015) 复制-@rowcount_only 参数值必须是 0、1 或 2。0=7.0 兼容的校验和。1=只检查行计数。2=版本 8.0 中引入的新校验和功能。: 已安排代理 distribution@rowcount_only 参数值必须是 0、1 或 2。0=7.0 兼容的校验和。1=只检查行计数。2=版本 8.0 中引入的新校验和功能。 重试。无法清除分发事务表。 [SQLSTATE 01000] (消息 14152). 该步骤失败。”
造成这个问题的原因是:由于源数据库中表的数据更新率远远超过了从库的订阅需求申请.
出现以上错误的复制机制,通常采用的是“拉订阅”,了解拉订阅的DBA肯定知道: 订阅服务器在经过一段时间才会向发布服务器要求复制出版数据库发生的变化的数据。所以,当订阅服务器在一段时间过去之后再向发布服务器申请变化的数据,此时发布服务器会进行主从库数据的变化计算和比对。发布服务器就发现了主库已找不到从库现数据上一次变化的点,则会报“SQL SERVER2012同步时报错执行一批命令时出错。正在重试单个命令。”错误。
解决方法:将先有的拉订阅机制拿掉,创建推订阅问题解决了(注意CREATE/DROP在存储过程的情况)。
还有其它的方法也可解决此问题,比如手写脚本建立同步机制。各位高手不吝待续。