一、解决办法
- 工作机repset –Q perdbg查看实时捕获数据量
- 检查log日志,看是否有异常,如有异常,先排错
- 任务管理器,查看内存使用——基本占满
- 登录SQL管理控制台,限制SQL的内存使用为 x% (具体数值根据实际情况来定,设置哪个数值,复制规则能够实时发送数据,不缓存磁盘,就用那个数值,可参考设为50%)
SQL Server内存使用限定修改方法如下:
①打开SQL Server客户端连接数据库;
②选中数据库实例,右键点击【属性】;
③点击内存选项卡,默认占用内存非常大,自己修改一下,改到一个增量数据能传输、不缓存的值为止
④重启SQL Server服务
二、建议
由于建索引过程要读出来再写进去,特别耗系统的内存,还很占I/O,普通机器建索引时系统本身就会变得很卡,一般企业不会做SQL的索引,但特殊行业如医院等,为了提高访问速度、提升访问效率,此类用户会定期对SQL做索引,建索引时对资源消耗非常大,如果数据库很大时,则会针对部分表做索引。
若您是此类需要定期做索引的用户群,请来电告知数据库使用习惯(如数据量、索引重建周期等)咨询项目实施可操作性。