none
SQLserver 2016 复制模块快照代理无法启动成功 RRS feed

  • 问题

  • 如题,SQLserver服务器最近快照代理无法启动成功,之前都是正常的。分发服务器和发布服务器是分离的,有时候发布服务器重启一下,快照代理又可以启动成功。查看代理作业历史记录,没有发现有指示性的提示。
    2021年1月4日 12:53

答案

  • 快照复制。目前问题似乎已经解决了;由于一些未使用的数据库复制代理并未取消,所以代理作业数量挺多的;通过停止一些没有数据变化的库的日志读取代理作业,几个报错的快照代理作业也启动成功了。就是不知道SQLserver有没有参数来调整代理作业的数量。
    • 已标记为答案 glyangtze 2021年1月5日 11:57
    2021年1月5日 11:57

全部回复

  • Any error in sql log or sql agent log?
    2021年1月4日 19:37
  • 可以看下 SQL Server agent 对应 job 的日志中看下日志信息


    2021年1月5日 0:44
  • there is no related errors in sql agent log;in the sql log ,it just tell me the agent failed ,no more information helped
    2021年1月5日 2:33
  • 在启动复制快照代理的过程中,agent 日志没有出现错误或信息日志,SQLserver日志中也仅仅是提示job失败了,就像截图中类似的这种,没有更多相关信息来判断问题可能出现在哪里;想问一下,快照代理生成快照的过程是否可以手动执行相关代码,看一下是否能正常生产快照信息
    2021年1月5日 2:37
  • 你好,

    请问在您的环境中配置的是什么类型的复制(事务复制,快照复制..)?

    查看以下文档是否有帮助。

    排除故障:查找 SQL Server 事务复制错误
    2021年1月5日 9:20
  • 快照复制。目前问题似乎已经解决了;由于一些未使用的数据库复制代理并未取消,所以代理作业数量挺多的;通过停止一些没有数据变化的库的日志读取代理作业,几个报错的快照代理作业也启动成功了。就是不知道SQLserver有没有参数来调整代理作业的数量。
    • 已标记为答案 glyangtze 2021年1月5日 11:57
    2021年1月5日 11:57
  • 一个 publication 对应一个快照代理,如果你要减少快照代理数量,你可以把更多的表放在同一个 publication 中,这样做的坏处是,同一个publication中任何一个表的同步失败,则整个 publication 失败
    2021年1月6日 0:33
  • 我的意思是,SQLserver不知道是不是有参数限制了代理作业数量,使得SQLserver代理作业数量达到这个值后,新建的代理作业就会无法启动
    2021年1月6日 7:57
  • 作业数没有限制,复制代理数受操作系统配置影响(复制代理是启用对应的命令行工具工作的)

    命令行执行

    reg query "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\SubSystems" /v Windows

    返回结果中,Windows SharedSection 中间的那个值,默认是1024,可以加大,这样可以启用更多的复制代理

    2021年1月7日 0:41